Dev

Numerous api changes including:

addition of action functors for keyboard input,
moving of key action handling from action down to action up,
replacement of stack "vector" stack with real stack,
implementation of starting states based on new state actions and the removal of state registration.