Loosened the plugin interface, lets plugins define their own handle method signature