NimbleKit provides functions for placing buttons, progress indicators, text and other native interface elements programatically. You can also do some styling with the HTML. Functions are available to stream Internet-based or embedded audio, search contacts, and read and process local and remote documents. The demo version of the development kit lets you run it through all of its paces, only stopping short of running it on your device. You can build and test in the iPhone Simulator to your heart's content before making a purchase.
As I mentioned, NimbleKit is available to try with full functionality. You'll need Xcode installed with the iPhone SDK, and you'll still need to be a registered developer to get an app into the App Store. Since the iPhone SDK allows you to test on the Simulator without registering as a developer, you can actually put the entire process to the test before spending a cent (well, after the purchase of a Mac and the broadband line you'll need to download the SDK ... ). NimbleKit can be licensed for a one-time fee of $99, and a licensed copy can be used to create as many apps as you want. A project template is included with the kit to get you started.