made the necessary unit tests and documentation changes. Still need to implement more unit tests.