Navit is an open source turn by turn directions app using the free Open Street Maps.
It is important to note that both the app and the routing engine, along with the map data are all Open Source!
The app is in beta still and can be downloaded using Cydia.
Add this source http://szndvc.dyndns.org/cydia/
and then search for "navit"
You need a planet.bin file of the Open street maps data. You can use this http://maps.navit-project.org/planet.bin but they have a tool that lets you select a portion of the map to download.
That file will go on your iPhone at var/mobile/Media/Maps/planet.bin