Revert "Revert "First draft of PluginError""

This reverts commit 054ece48a7c955b6aceceafaadb597467a98ecfc.
Notes for SQLController/Cameron
IPlugin method
Complete overhaul for PluginLibrary