NPM harness

I had some problems running the build because my global plumber is incompatible.  Wrapping the test and build tasks with npm uses the local binaries which removes the issue. Ive also wrapped the setup.sh into a post install which means you only have to execute npm install to get up and running.
I'd also prefer using prefixing this with `env`, so it's `env TEST_SERVER_PORT=1234 BROWSER_NAME='chrome' ./run-tests.sh"`. That way we don't pollute our shell environment.

Maybe have separate `test firefox` and `test chrome` tasks?