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)

It's still an empty dict. I'm not sure why we need to fail on empty dict? It's something we *do* expect when calling this function; inserting the first column into an empty dict is a common non-error case.