match whitespace as well
a datatype to represent lisp values
added parsers for atoms, strings, and numbers