Use Data.Map for environments (see #80).

For discussion.

This doesn't seem to affect run times much.