#151 refactored plugin structure