Corrects correctName for non letter starting names.

The rest of the name would be spelled out when the name didn't start with a letter.
Add documentation and shorten code.
HLint improvements.