Modified the plugin system to do a better job at separating enki implementation details