Completed re-write to follow a cleaner, easier to follow style, as well as making it much easier to modify in later stages.

Went back and documented (most) of the classes/functions

style, as well as making it much easier to modify in later stages.