Add tests, move tests to seperate source folder