Introduced CalculationFactory to encapsulate Addition and Subtraction.
Introduced Multiplication and replaced CalculationFactory with CalculationStrategies.
Introduced Division.
Extracted CalculationStrategy as an interface and introduced OperandCalculationStrategy to deal with single values.