[bug 971369] Automated Gengo machine translation

* adds automated Gengo machine translator
* adds Gengo API wrapper
* adds tests
* adds some statsd calls so we can sort of see what's going on

The tests are a little goofy since they're very mocked so as to not
require public and private keys to run.

This infrastructure doesn't work at all unless you have working public
and private keys from Gengo. If you don't, then when it goes to auto
translate, it'll throw a GengoConfigurationError.

This is a first pass. If we can't guess the language of the text, then
we don't do anything with it. Further, if there's an error with machine
translation, we don't do anything more with it.
[bug 971369] Add translated description to response view
[bug 971369] Fix gengo admin view

This tweaks the gengo admin view so that it shows the products that are
enabled for Gengo machine translation.
[bug 971369] Add spot translation

* adds ability to translate a specific response from the response view
* reworks the gengo infrastructure so that it knows about supported
  langauges and handles edge cases like when the guesser guesses an
  unsupported language

Note: The spot translation view is hard-coded to use gengo_machine
translator and it also doesn't return any messages which sucks from
a UX point of view. It's here as a prototype, hence the big note.
[bug 971369] Make code better

* make GENGO_LANGUAGE_CACHE a tuple value rather than a list so it's not
  mutable
* tweak the "use an existing translation if we have one" code so that
  it's a little more efficient and has a statsd call so we can monitor
  it