I use Back-Country Navigator on my Android phone and my ride buddy has asked whether there's anything similar for iPhone. Now, I've never had an iPhone so thought you guys may be able to advise:

Requirements are:
1 Must be able to pre-cache topo maps via wifi or 3G
2 Must be able to view/follow pre-imported GPX file
3 Must be able to trace on screen current tracklog and export as gpx (or kml)
4 Must be able to view current position on screen
5 Must be able to view co-ordinates (in either lat/long or UTM) of current position
6 Must be able to create waypoints and display co-ordinates
7 Must be able to select different maps sources (ie work with US 1:24000 and Canadian 1:50000 topo maps, Open Cycle Maps would very useful as well)

I'm not interested in apps like MapMy Ride or Endomondo as these don't fulfill the pre-caching of topo maps

I'm sure this has probably been done before so feel free to point me to other threads or name recommended apps and I'll do a search

Thanks in advance