I need to add some more tests, but the original functionality still works, and the basic merge works.