|IT'S UML TIME!|
Note that most classes members are omitted and method signatures simplified.
They say that UML is worth over 9000 words...
...so I'll just throw random class diagrams at you.
I used NClass for this. NClass is nice for doing C# class diagrams.
End of uml time.