Better test checking

 - fork every test
 - capture signals
 - more assertion tools
 - test can be expected to fail
Tests are all passing now.
Tests refactored onto less files.