moved out all engines, use/engine/plugin api, more tests
add tests for usePlugin(String)