Add some more documentation about the different state and kind values
Enforce that the GsAppState gets set to sane values
Enforce that the GsAppKind gets set to sane values