Clarification with comments, method names and variable names.

I have left this dormant too long so I think it's time to get it
finished as soon as my exams are over.
A minor usability update from a understanding perspective. I felt some
of the variable names were oddly named as were some of the methods.
There was also very little sence in the way the code was laid out -
Methods were not in order. It has been tidied up to make it less messy
and more meaningful in terms of naming.