adding tests
moving tests and making them actually work
cleaning up