Use Condition class instead of Expression where appropriate. Rename DerivedVariable to ExpressedVariable.
Also rename ConditionalDerivedVariable to ConditionalExpressedVariable