Finished

Did not compile correctly but defined all the classes