re-structured the project, added more testing for contactManagerImpl