Additional requirements with testing

completed preliminary requirements and added testing to the project