Snapshot of work to refactor the navigator's event processing.

I was handing everything in the event level model view essentially. Now the model level delegates mouse events to the navigator container. This is a much simpler way to keep the global state of the container tidy. I've removed a lot of the fancy menu behaviors that were based on policy code hacked into the menu level class (this code also removed). The plan here is to rebuild this back up to parity with what I have, fix some bugs, and get rid of a lot of spaghetti.