The main idea is to create a single slice (single side) of the mesh, and rotate it about the z-axis. The spin rotation is based on the camera angle, so if any other view is used other than the z-axis [NUM7] the results may be unpredictable (or creative). As well the spin always occurs around the cursor. Be sure it is place strategically before spinning.
In this approach I decided to start with a single vertex at the origin, and extruded it into a complex profile for a cup.
Once the profile is complete, switch to the z-axis view [NUM7], then select all the vertices [a] and click the Spin button in the tools panel.
What's important in going forward with this mesh is that the starting profile of vertecies is not connected with the vertices that rotated all the way around. These vertecies can be joined or "merged" using the Remove Doubles button. Make sure the entire mesh is selected before applying this. You'll know that vertices have been removed from the info button on the upper right corner specifying how many vertices were removed.
After applying some modifiers: solidify, sub surf, edge split, as well as smooth shading, below is the rendered cup. When using smooth shading with a mesh created this way, it may be necessary to Recalculate normals if the lighting seems wrong.
One other caveat to this operation is the ability to duplicate the object along a circular arc. Using suzanne for example. when spinning, an arbitrary set of vertices are extruded along a curve to the next new instance.
However, if you check the Dupli box (for duplicate), instead of extruding along the curved path, it duplicates and keeps the meshes separate.
This can be very useful if you need a quick way to create an arc or circle of objects.