Input can now be uppercase/lowercase.

If shift is held down, input is uppercase. Otherwise, the input is
converted to lowercase using std::transform. Digits are not altered.