Its one of those things that is not as complicated as it seems.
The two shapes in the example above are composites formed by combining two simpler shapes. The beauty of GJK is that only the support function of the shape is required, and it is trivial to combine two support functions to produce a "shrinkwrap" hull around two or more existing shapes.
Half the battle with a 3D version is going to be working out how the heck to visualise it. But fear is much reduced now I have a 2D version working. Home grown physics engine, one small step closer.