Implement Boolean, LessThen (ruby, page 29)
Make IExpression generic on the return type (c#)

This way we're ready to implement boolean expressions.
Implement Boolean, LessThan (c#, page 29)
Add Machine Factory

which hides the type parameter