base plugin now handles processing, derived plugins will be simplier now