made the dynamic module class exception safe by moving exception-throwing operations out of the constructor and destructor. accordingly, these operations must be called by the calling entity, in this case by the static Model methods that open and close modules.
added opening/closing methods to the appropriate Model class methods and/or made new ones where necessary
adjusted App.cpp to call the module unloading method recently added to the Model class
added tests to check dynamic loading, model construction thereafter, and cloning of facilities
Merge pull request #443 from gidden/testing_dyn_loading

Testing dyn loading - This adds testing capability for testing dynamic loading. It also makes dynamically loading modules exception safe(r) by moving exception throwing operations out of constructors and destructors. Builds and tests fine for @katyhuff.