add a way to run the test suite via the CLI

This adds some coverage of the client side code in the CLI
(in the sense that we're exercising the client side; this doesn't
contribute to the --coverage data at this time)
test giant PCREs with a lot of alternations

re-arrange the error message so that the human readable portion
appears earlier in the message.