created unit tests for all current functionality.