The Grail Framework: Making Stories Playable On Three Levels In Crpgs