I have an application that successfully uses a pre loaded tile cache of Open Street Map .png files for a small city area about 20km x20km to support the presentation of tourist information on the web, iPad and iPhone. It is written in HTML5 and uses MoSync to create the wrapper to deliver it on the mobile devices.
This approach works well for cities but I would like to extend the app to work in countryside areas (in the UK initially) where if I could access it, Ordnance Survey mapping 25000,50000 and 250000 would deliver a much better user experience.
My specific questions are:
Answering a few of your questions:
There are several OSM based maps with topographic elements. Take a look at the list of tile servers and the list of OSM based services. Remember to check each usage policy first before using them in your application.
For determining the filenames of the slippy map for a given latitude, longitude and zoom level, read the slippy map tilenames page in the OSM wiki.