Heya, an indirect answer first. There are squash and stretchy ball rigs you might want to look at? http://www.mattornstein.com/downloads.html for instance. I think this is the kind of thing the Animation Mentor people use also. It just frees animators up to focus on the important bit I think.
To solve your problem of parenting, this is where constraints come in really handy. Parenting essentially says get all transformations (Tr, Ro, Sc) from the parent node. Constraints are good in that you can say only take the rotation in X and translation in Z from the parent and they’re quite flexible.
What I think you’d want is to say constrain translation of the squash deformer, but not the roation. Freeing it up for you to animate it by hand.
To do this you select the driver first (essentially the parent) then the driven (the child) and in the animation menu set you go to Constraints > and then select the type of constraint you want. It’s worth playing around with these, in the option box. You should be able to get the result you want with this. Let me know if I misunderstood your question.
nb, they changed the colours of constraints recently but blue means working, I think green means there’s an error. You’ll see in the channel editor if it’s working.