Automated testing of level solutions

After merging and running `npm install`, all you need to do is rebuild and run: `grunt test`!

That also runs jshint, but you can run just the integration tests with `grunt mochaTest`

This PR includes a new drop of blockly-core that fixes a few small issues including some stuff preventing headless execution.

The test/solutions directory contains 20+ solutions for Maze. More to follow, along with the ability to test turtle, particular types of failures, user feedback, etc.