TernaryExpression

* renamed ConditoinalExpression to TernaryExpression
* implemented ExpressionVisitor for TernaryExpression
And auto. Unless you need thing to be of a specific type, auto is good.