Added --npm flag

This will run `npm install` and then `npm test` if no commands are
present for the current build
Added append function to Builder

This was done to make sure we are not throwing an error if a command is
being run on a build that doesn’t currently exist.  This shouldn’t
happen in the first place, but more of a safety precaution.
Don't wait 5 seconds before getting the first build
Defer start() until process.nextTick()