Redesigned plugin, using task rule and separated npm stuff into own tasks