How to deal with subpanel that does not have ground wire back to main panel
There is nothing wrong with double taps if the panel lists them as allowed. For instance, Pushmatic panels allow this. 

At one time, the neutrals and grounds mixed (and no ground wire) was allowed, so it would be grandfathered.  Still, it's worth correcting this.  Grounds  should indeed be separated.  

Though it's not strictly necesary it be a ground bar.  You could do it less formally with splices, but you are dealing with a fairly large ground lsupply" wire, so a ground bar (or several) will be logistically best.     It is important the neutral bar be fully isolated from the steel frame of the panel, and the panel frame be grounded. 

If any circuits use bare neutal wires, those need to be fully insulated.  If this is a dryer or range circuit, those ungrounded circuits are dangerous - consider fully upgrading them with new 4-wire cable.  

If you want to mount a separate ground bar, just get any ground bar with a flat bottom, and bolt it up to the panel via any means.  It only needs to not fall off; you'll rely on a separate ground lug and strap to ground it to the panel.   If you sant the mounting screws to ground it, make sure they are thread pitch -32 or finer (higher nimber).  

As far as retrofitting a ground, that is certainly legal, and was broadened to be legal for any circuit in 2014.  The ground wire does not need to follow the same route as the conductors.  So get there any which way you can.  

If you have a grounding electrode going to the subpanel, might as well include it as part of the new equipment grounding conductor net - you can't have too many ground rods, as lomg as they're attached to the grounding network, not the neutrals!