Kml cleanup

Here's the work I did today at our hackathon.  It's not perfect, but it's diverged far enough from your stuff that we should probably merge it in ASAP.

1. Added KMZ file support (and a third-party zip library)
2..Cleaned up some of the style processing, though I'm not completely finished with it yet.
3. A bunch of other little tweaks and cleanup.