completed some more tests and code