Another great post by Geertjan Wielenga:
http://java.dzone.com/news/rendering-new-content-types-lo
This time the author explains how to get Lobo to render arbitrary content types, using a ".mf" (JAR Manifest) file as an example.
From the post, I can see there are some gaps in the existing documentation. For example, it's not clear that NavigatorExtension.init() is where you need to register your clientlet selectors. Geertjan Wielenga figured that out by looking at the JavaDoc.
Also, I noticed that in the text file example I had used IORoutines.load() to load the response content. That all works, because lobo.jar is available to extensions at runtime; this is how the class loaders are organized. Officially, only the clientlets and extensions API (lobo-pub.jar) are available to extensions, in addition to the standard Java API. In other words, the org.lobobrowser.util package is not in JavaDoc and is not currently intended to be a stable API.