Removed singletons; created a plugin object that holds hooks and keywords. Removed DSL
Merge branch 'plugin_184'