Cleaned up the code a little bit.
Reverted all(that I could find) of the code back to the competition version
Will add javadocs for everything soon