Fist naive implementation of expression parsing.
First set of unit tests passes. Implementations need a lot of tidying and work.