Add gene annotations

A new celery worker, gene_annotator, starts when genotype_extractor is done. It updates the annotations:gene_names field in the genotypes table, as well as the extant_columns field in the vcfs table. As soon as extant_columns is updated, a reload of the examine page will show ANNOTATIONS as a supercolumn with the gene_names subcolumn. Works automatically with CQL.

FYI: After merge, run `alter table genotypes add column "annotations:gene_names" TEXT;`

Some notes that aren't in TODOs:

- We talked about CQL using gene_names rather than "annotations:gene_names" (for brevity), but that seems like a larger question re simplifying all of our column names in CQL? (For example, maybe we take out the supercolumn whenever there isn't ambiguity? Or allow for the supercolumn to be included or excluded in CQL, and default to something if there's indeed ambiguity?)
- The UI shows null when we don't have gene names. That's probably non-ideal.
- I'm saving the "status" idea ("Currently annotating genes..." in the UI) for a later PR.
- I punted on prefetching Ensembl data, so gene_annotator might be held up by a few seconds to a minute when it hits a release for the first time (and needs to download it).

Screenshot: 
![gene_names](https://cloud.githubusercontent.com/assets/322932/5167658/af8b4112-73c7-11e4-9b4b-f6a7873b0043.png)

Do you mean a separate `UPDATE` for each row? That'd be a lot of round trips. That said, just like `INSERT` has a `VALUES(...)` syntax that lets you specify multiple values in the same statement, it does look like `UPDATE` also provides has that (although it's strangely hard to find examples of it in Postgres?). But my understanding is that you'd still want to chunk that up into a bunch of `UPDATE` round-trips, which seems less ideal than one round-trip.

I'm not clear what the limits are for when things get slow, but since you had the CSV code in place, I figured I'd use it :)