v2.0.0-beta

This *should* work.

- [x] Rewrite the test suite so that it can reliably test against a wide variety of test subjects.
- [x] Ditch the module loader boilerplate, go straight commonjs for now.

To test:
- [x] `npm link` it locally and see if it can be required into other modules