Complete refactor of how plugins are run. Everything is now a plugin