added a bunch of stuff for test driven development