Added DoubleDispatch and CompositeVisitor.