Add variable name based watches
Add variable watch test for shared breeds-own variables
Optimize for no variable watches by not looking up variable names

I saw about a 10% performance improvement. It is back to baseline performance.
Set variable watchers to null if it's empty
Comment why variable watchers doesn't use SimpleChangeEvent
Make variable watcher notification use only one hash lookup
Make variableName public. Put warning that it was added late.
Add javadocs for variable watching.

Specifies that variable names must be upper cased.
Remove variable watcher lists from the variable watcher map when they're empty.

This makes it so that the variable watcher map will be properly removed when there are no watchers.
Add test for deleting variable watchers
Add WidgetParser Widgets!
Change classes to case classes!
wip
Change classes to case classes!
Compilation errors fixed!
Fix testcommands!
Move PlotLoader code to PlotReader!
Add global constraints/commands!
Add views to all test models!
Models with empty sections are no longer valid