That model is symmetrical in positive to negative Y, you can totally use the mirror modifier and model for symmetry. Same for everything else you have said, you can use traditional retopo shrink-wrap and SubD modifier. You just need to have good topology and watch those edge flows. It all applies to having a CAD model and turning it into a mesh that can be subdivided. You seem to have your approach nailed and ready to go.
Kent also goes into retopo on the HUMAN course, that can be helpful to watch. Also there is a course on using the addon Retopoflow which is what the pro’s use. Linking up:
https://cgcookie.com/courses/retopology-with-retopoflow-3
https://cgcookie.com/lessons/intro-to-modeling-detailing