Minor consistency
Checkpoint: simple sketch of statements
Statement classes done

Not tested, and CreateStatement is missing its semantic check, but existing tests pass.
Simple Statement tests
Virtual destructors at top of hierarchies and nowhere else.
Use C++11 =delete to prevent expression and statement copying
Try unique_ptr for Statement

It almost works, with a quirk in the construction of CaseStatement.
The use of shared_ptr there is more of a convenience than an architectural necessity, I think.
Add case statement test, fix a bug

Another victory for unit tests!
Clean up CaseStatement syntax logic

Removes need for shared_ptr<IStatement>.
Expression::left() isn’t needed or useful

A surprise, but true.
Simplification of Expression
No more shared_ptr

Strange experiment. Things work, though I still feel funny about tieOnRightSide.
Evaluation, incomplete but partially tested

Only testing string concatenation, but it worked!
Slightly more satisfactory Value conversion

In this commit I separated value conversion from value getting.
The implicit conversion would make sense for a Value framework meant to be used for simpler C++ code.
But this is for unambiguous implementation of an evaluator at a higher level.
Minor testing of Big Four arithmetic operators