Introduce 'runtests' subcommand.
Forward compatiblity with Python 3.
Tidier handling of errors.
Consistent whitespace formatting.
Remove support for makefile generator.

The makefiles generated are too slow to realistically use.  Further, the ninja
generator has superseded the makefile one in ease-of-generation.