Towards a Unification of Rewrite-Based Optimization Techniques for Object-Oriented Queries