General fixes

Here are a bunch more general fixes to some problems I've found while trying to get the testsuite to run on my machine.

The big change here is a rework of the driver and test runner code. It's a bit of a big change so it might break the non-Premake VS solution and projects.

It'd be great if you could test the Premake builds on your setup and let me know of any shortcomings so that we could kill the VS projects for a unified build system.

I also had to disable LLVM module verification since there's some P/Invoke marshaling problem when freeing the string.