sfbrigade/citygram-sf-registries — pull request #3 by mertonium (2014-11-02 05:44:54+00:00)
Title: 1411 merge old street use permits

After @ondrae told me he was merging all the routes into one `app.rb` file, I refactored my [original pull request](https://github.com/sfbrigade/citygram-sf-registries/pull/1) so that it would fit.

Some things to note about this PR:
* I made a `lib` folder. This is where application files should live. I also updated the path to `app.rb` in `config.ru` (`bundle exec rackup` still works just fine).
* I added the geocoder gem. I'm sure street-use-permits will not be the last ETL we do that needs to be geocoded.
* Because of the calls to the external geocoding services, I added a dumb cache to hold results from the geocoder.
* 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.