Refactor and add tests for plugins.py

Improvement to the tests currently being run on ``plugins.py``

related #644 
Yeah. Plugin Manager does not have a config attribute. Only IBackendPlugin has a config attribute.

However, in the unit test I replaced the not, so it was assert plugin.plugin_object.config and it passed, then I tried assert not plugin.plugin_object.config and it also passed. Will look into this later today.