Models: Introduce app.install_model.

All references to galaxy.model.tool_shed_install models should go through this instance. Right now it is a reference to the same ModelMapping instance, but the goal is to allow them to be two different mappings.
Models: Allow core Galaxy models and install tool dependencies to target different databases.

Now app.model and app.install_model may be two distinct objects not just two references to the same object. Add ModelMapping class for galaxy.model.tool_shed_install.

If install_database_connection is set in Galaxy configuration, a separate database will be targetted for the persistence of the tool shed repository information. Additional database options may likewise be specified in this case: install_database_engine_option_pool_size, etc....
Models: Fix functional tests for ORM interaction refactoring.

Essentially replace old references to global variables in Galaxy with references to global variables just defined in the test framework (a slight improvement).
Models: Allow setting install database target when running tool shed functional tests.