Add Street Use Permits connector

Implemented of the ETL for SF Street Use Permits. Messaging from [this issue](https://github.com/citygram/citygram-services/issues/24) used.

I started by modifying the tow-away-zones example, but hit a point where there was too much code in one file, so I did a little organizing and abstracting. A couple of things to note (also in the service readme):

1. I added a readme to the service (for these notes)
1. This data doesn't come with latitude or longitude, so I added the [geocoder gem](http://www.rubygeocoder.com/).
1. Since I added a geocoder I also added a simple cache - just an in-memory ruby hash (so it disappears when the server shuts down), but it responds to `fetch` just like memcache, redis, et. al., so dropping one of those in would be a snap.
1. I pulled all of the code required to turn a result from Socrata into a geojson feature into a class to de-couple it from the server code. I thought this might help serve as a model for other services.

This is my first citygram service, so if I missed the mark somewhere, please let me know.