7.3 Class diagram
+ means public
- means private
# means protected
<<constant>> means constant field (PascalCase per C# conventions)
Underlined means static
Italic means abstract
White triangle with solid line means derived class
White triangle with dashed line means interface
Open arrow means unidirectional