Adding new unit tests and enhancing documentation