Added more tests and cleaned up the code a bit with Josh Larsen