Thanks to everyone for helping to answer Jon's questions.
On CSS vs. XPath queries, the Selenium-WebDriver maintainers strongly encourage CSS queries due to more robust support for them.
On classes, interfaces, methods, and functions, Niels is correct. To add a little more information: If you need to see what class something is, you can call (class your-object). If you need to see what interfaces are implemented by that class, you can do (supers (class your-object)) which will include both super-classes and interfaces implemented by the class of your-object.
The situation in clj-webdriver is confusing due to wrapping Java objects in Clojure records which, as I mentioned earlier, will be removed in a future release. Instead of having to do (:webelement element) to get the pertinent Java object, you're element will be that object already.