an initial implementation of the GCMNavStackMachine

Brian, Jerry, Tom (not at-pinging because it's late on Saturday)
This is a state machine that's backed by a navigation controller.
It's simpler than YBStatechart because it relies on the navigation controller
to track the current state (so there's no need to create our own parallel set
of states to mimic what's in the navigation controller).

I'll add tests tomorrow and so it's not yet ready to merge. This is just an early peek.