ObjectModel interface cleanup

 * remove operations from ObjectModel and ObjectModelImpl
 * move string constants to ObjectModelImpl
 * create BinaryOperation.eval and UnaryOperation.eval methods
   to take the operation implementations previously found
   in ObjectModelImpl.
 * Call *Operation.eval methods in ExpressionReducer