How does normal baking work?
The high resolution mesh does not need to be UV mapped at all.
Baking the normal map works by calculating the difference in the surface normal between a particular point on the low resolution mesh and the nearest point on the high resolution mesh. As long as they are sitting on top of each other, everything should work as expected.



Above you can see the two meshes are on top of each other (the middle image is only the wireframe of the left image, not another mesh) and the resulting normal map.

So the position of the surface is used to determine which points on the low and high resolution meshes go together, the UV of the low resolution mesh is simply the target output of the bake and no UVs are used in the calculation of the normals, thus the high-res mesh doesn't need any.

Also, clean topology is also important for correct deformation in rigged models. As long as there are no overlaps and the islands aren't too close together (3-5 pixels is usually fine) the quality of the UV map isn't too important.

Thus the workflow is:


Retopologize the sculpt
Unwrap the low-res mesh
Place them on top of each other (if they aren't already)
Select the high-res, then the low-res mesh
Tab into Edit Mode of the low-res mesh, select everything
Make sure you're using Blender Internal render and create a new image. I recommend enabling 32-bit Float to prevent any banding or other image artifacts.
In the bake panel, choose Normals for the bake mode and enable Selected to Active
Hit the magic bake button
When it's done, save the image as an EXR or a 32-bit format, otherwise some of the information in the normal map will be lost and you'll get obviously visible banding.