Finally, all tests pass.

On to benchmarking and cleaning it up, if the results are good.