Do not call QByteArray::toUpper when parsing NILs

The previous form of case-insensitive comparisons involved calls to
QChar::toUpper() which are pretty expensive. This patch cuts the time spent in
Responses::Fetch::Fetch from 34.38% down to 30.69% of the runtime using my
favorite benchmark. Callgrind reports that the cycle estimate is reduced from
14.32 millions down to 13.44 millions for the whole testFlagReSyncBenchmark
test.
Refactoring: move the atom-specials recognition out
Fix parsing to not recognize NILxxx as NIL

There was a long-standing bug in the parser which apparently treated any atoms
starting with NIL as NILs. The good thing about that was that it only happened
when the data were not transmitted as quoted strings or literals *and* the code
asked for the token via getAnything. It's still a pretty severe bug, though,
which could lead to stuff not showing up in Trojita for some reason.
Simplify the getNString's code

REVIEW: 113140