Renamed parseAtom -> parseAtomOrBoolean, moved parsing to new parseAtom

The new parseAtom always returns an Atom value, even if the word was
"true," "false," or "nothing."

The renamed parser calls the new parser, and then checks the returned
atom's contents to determine whether or not to switch out the value for
a Boolean or Null value.