Fix processing of "external" value definition

"let external" should always be explicitly annotated,
it is counter-productive in many respects to have to infer
the type of an external value from its usage in the code.

Fix a bug in elaborateDictionaries, as universally quantified type variables
were never introduced in the environment.
Update comment
Remove dead code