Did a really huge revamp to clean up the code. Didn't organize using packages yet though.