Separate the behavior for cloning and cleanCopy().
Separate the behavior for cloning and cleanCopy().

cleanCopy() is not just a simple clone as it resets a number of clauses
on the query object, whereas a clone should recursively copy all those
objects.

thinkingmedia/cakephp,garethellis36/cakephp,davidyell/cakephp,jeffblack360/cakephp,tgr0ss/cakephp,mvdriel/cakephp,CVO-Technologies/cakephp,ionas/cakephp,dakota/cakephp,justinyost/cakephp,bravo-kernel/cakephp,CakeDC/cakephp,petteyg/cakephp,dakota/cakephp,elboletaire/cakephp,cakephp-fr/cakephp,michaelze/cakephp,garethellis36/cakephp,mvdriel/cakephp,garethellis36/cakephp,timhoeppner/cakephp,michaelze/cakephp,Phillaf/cakephp,tenkoma/cakephp,justinyost/cakephp,eryw/cakephp,HavokInspiration/cakephp,garethellis36/cakephp,dkarvounaris/cakephp,ADmad/cakephp,berrygoudswaard/cakephp,gmponos/cakephp,mvdriel/cakephp,ndm2/cakephp,CakeDC/cakephp,ndm2/cakephp,jeffblack360/cakephp,mvdriel/cakephp,tenkoma/cakephp,eryw/cakephp,bravo-kernel/cakephp,justinyost/cakephp,petteyg/cakephp,timhoeppner/cakephp,tenkoma/cakephp,khoimt/cakephp-study,elboletaire/cakephp,dkarvounaris/cakephp,tgr0ss/cakephp,petteyg/cakephp,dakota/cakephp,HavokInspiration/cakephp,Phillaf/cakephp,thinkingmedia/cakephp,timhoeppner/cakephp,berrygoudswaard/cakephp,CakeDC/cakephp,cakephp-fr/cakephp,HavokInspiration/cakephp,petteyg/cakephp,CakeDC/cakephp,cakephp/cakephp,nrother/cakephp,nrother/cakephp,ionas/cakephp,khoimt/cakephp-study,CVO-Technologies/cakephp,bravo-kernel/cakephp,Phillaf/cakephp,dakota/cakephp,thinkingmedia/cakephp,gmponos/cakephp,cakephp-fr/cakephp,tenkoma/cakephp,ndm2/cakephp,ADmad/cakephp,gmponos/cakephp,jeffblack360/cakephp,ADmad/cakephp,ndm2/cakephp,dkarvounaris/cakephp,khoimt/cakephp-study,ionas/cakephp,berrygoudswaard/cakephp,tgr0ss/cakephp,cakephp/cakephp,davidyell/cakephp,elboletaire/cakephp,ADmad/cakephp,nrother/cakephp,cakephp/cakephp,CVO-Technologies/cakephp,davidyell/cakephp,cakephp/cakephp,michaelze/cakephp,eryw/cakephp