Added comments. Added more methods to break up code a bit.