Tagged: A Theory of Fun for Game Design