Add (fixed) faster variable freshening

This used to break evaluation, only because map creation violated the
invariant.

And it gives some speedup.
Speed up operations with insertLookupWithKey
Move Eval monad into PTS.Syntax.Names

This monad is in fact just a freshness monad. I'm going to rename it
next, and then replace the implementation.
Encapsulate Eval more: hide envToNamesMap