cleaned up the code
added new unit test stubs