Refactored architecture to be more plugin friendly

Implemented MEF for finding new plugins