changed Identifier structure; Scheme now uses Data.Map