I've used Rever and RidewithGPS, and found both to be disappointing on an iPhone primarily because of the software crashing and because the offline mode was spotty at best.
Now that Google Maps has a multipoint routing feature, that's probably going to be my go to app. I'm using it now for point-point directions, the offline mode works great and it hasn't had a stability problem.