UML

I have created a UML class diagram using ObjectAID UML, to improve
clarity on the design. Also corrected two minor typos, and removed an
unused import.