New test runner

Also splits out the processing model test from the parsing test. I haven't added in an equivalent processing model test yet as that will be quite a bit more work and the processing model is going to change a bit again...

I've also only moved over the cue-setting tests. Do you want one big pull request with all the tests @humphd or different pull requests per "test folder"?

Depends on #163 and #162.

Fixes #147.