Large amounts of refactoring and reorganizing. Program works... kind of.