Clean up after #122

* Removed intermediate record
* Split out test cases to remove most of the special test case handling.