Updated to use promises, and to use settings from packages.json.  Also fixed plugins to be standard node modules with specific structure