Implemented proper math and proper base classes. Let the real coding begin