Added the base abstract app state class that was
originally from Lemur.  This provides more convenient
enabled-state management than the normal AbstractAppState
class.  In addition, it exposes convenience methods for
getting to other app states, the application instance,
etc..