Fix 13736 - Spellchecker should prefer symbols from inner scopes

spell checker: find the "closest" symbol for the minimum levenshtein distance by counting levels of scopes between the identifier and the found symbol. If the symbol is found through an import, another level is added.

This is needed to let the precise GC pass the test suite, otherwise "gc" is easily reported for spell checker tests.

https://issues.dlang.org/show_bug.cgi?id=13736
Please document what the inputs, outputs, and return value represents. I find it rather obtuse from reading the source.