Refactored core / plugin system to use objects
Refactored plugins
Changed spacing