extract plugins to separate gem