Got everything fully compiling, now refactoring