added more tests
removed unnecessary code
added even more tests
reverted previous brokn commit