Implemented Managed Extensibility Framework to load plugins

Separated Classes into separate files