Adding code for minimal functionality

Changes:
- Added parser, which builds a AST in the form of a Cons
- Added code to allow a Cons to print itself out (in a form which can be fed into the REPL)
- Added code to allow a Cons to be evaluated
- Added placeholder skeleton code for session/context feature
- Added convenience constructors to Array