Final push of the night got everything essentially working.

just need to do some error checking and commenting. Might try to
implement the extra credit in order to get more points!