Added Dynamic Library handling classes

Most of the functionality is using a design copied from the OGRE3D
library.