added GetType in UserData, added string to SceneState, explicit types for SceneState values