Make unique name generation much quicker

Especially in large do blocks with ambiguity and unnamed bindings. We
make names unique in advance to simplify lots of other stuff, but we
really don't want to generate-and-test loads of possibilities. This is a
bit of a hack, but it just makes sure we generate a name that's already
likely to be unique.
Merge branch 'master' of github.com:idris-lang/Idris-dev