Twisted Cylinder (Hyperboloid of one sheet)
I think this solves the issue with moonbots answer. Use the TinyCAD addon to create vertices at the edge itersections

EDIT steps:


rotate top face 90 degrees (R, Z, 90)
duplicate (Shift-D) and mirror along any axis (e.g. Ctrl-M, X)
press W and select TinyCAD ⯈ XALL
press F to fill faces
press W and select Remove Doubles