Hi @allie.

I've been looking into this module a bit as I need some geocoding for a project. I was wondering if you thought about utilizing CTools for the plugin architecture. It seems that what you have built is already very similar.

Using CTools would offer the benefit of:

* A standard plugin architecture that will probably move into core in some way
* Caching
* Easy file/direcotry handling
* Less code for this module
* Integration into such things as Features

Of course the main downside is an external dependency, but CTools has become such a large dependency for other popular modules, I don't see this as a huge issue any more.