PaneView with push/pop

Neatened up some pane switcher code and added push/pop events.

Also, tests!

![Passing](http://imgur.com/sVvVdTX.png)