Faster Travis, Test Fixes and better error messages

I've split the tests into examples and the rest, though they don't actually seem to run in parallel. I've also tried to eliminate some of the requirements.

I've got the tests working again. The major issue was that metropolis called nested functions and Python can't deal with that in multiprocessing (can't pickle them).