Defined PluginManager interfaces and exceptions and basic skeleton.
Added copyright notice and cleaned up the code.
Added simple test to avoid build to break
Fix Coding convention issues
Fix Coding convention issues