introduce player data object, plus locked/unlocked missions

This is so we can developing the Player object, and implement more of the play/succeed/fail/review app cycle.