The Vulcanize script can now build the UI, the element test files, or
both, defaulting to the latter.
The `mkdirp` package is used as it's the simplest way of getting
recursive `mkdir`, ie. `mkdir -p`, to work.
Using Sauce Labs and Grunt. Also install runtime dependencies
using Bower to get the Jed package that's used in testing, and
save the Bower version resolutions for Travis so that step can be
automated.
Start with making plugin.js into a module, and re-implementing Plugin
using the class-based ES6 syntax, as it's a lot cleaner. Dispatch
events from setters instead of using Object.observe when changing
values that prompt external changes.
Vulcanize's whitespace stripper doesn't like the ES6 syntax though, so
disable that.
Also start implementing some tests using Mocha and should.js.
Finish refactoring JS Plugin code
To help enforce a consistent JS code style and improve code quality by
catching various syntax gotchas.
I'm editing in Atom with the linter-eslint package installed, and it
gives me inline warnings and errors, very handy. I'm not going to run
ESLint on Travis (yet) though, as it spits out far too many errors for
it to be useful.