skeleton and test code for project 3