Form the skeleton of the rewrite

Most files are copied/adapted from Istanbul (Rev 1d35a4e9310).
Diffbug borrows two things from Istanbul:
1. The plugin/subcommand architecture.
2. The instrumenter, because we also need to instrument the code
   to gather runtime information.
Make minor changes to ensure we pass jshint
Adapt index.js from Istanbul to provide an API
Copy/Adapt relevant tests from Istanbul