The problem is that you have to instantiate your object on every page load.
You can add your object to $modx:
$modx->app = $app;
Then refer to it anywhere:
$modx->app;
The nice thing about System Settings is that they're in the DB, so $modx->getOption() can get them anywhere $modx exists with no extra work.
If the objects can be persistent classes, you can create them as packages and use (IIRC) $modx->addExtensionPackage() just once to register them. After that, they'll be stored and the package will be loaded automatically on every page load and you can use something like:
I believe Articles does this. I know ClassExtender does.