Added basic Expression classes

A lot of details, declarations and implementations are missing because
of unresolved discussions (statements vs. assignment expressions,
primitive operations vs. macros, etc.) as well as VariableIdentifier not
holding a ref to Value for function calls.