MBS-3590: Use memcached to atomically generate wizard session IDs

It appears that the session ID is not stable, and is prone to change. From
debugging this issue on IRC, we found that of all 3 wizard_session_id's that
resulted in this crash, there were memcached keys with different session IDs,
but the same wizard ID. It seems unlikely that this is due to a clash in rand()
3 times in less than an hour.

I've changed the wizard session ID to be generated by memcached, providing a
global, and stable incremental ID store.
MBS-4117: language switcher
  * Sets the language using the 'lang' cookie if it exists, falling back
    to the accept-language header
  * Sets the 'lang' cookie using a dropdown menu based on
    DBDefs::MB_LANGUAGES (the list of available translations)
  * Dropdown uses DateTime::Locale's native_name, when a locale exists
    for that language, and the language code otherwise
  * MBS-4853: $ENV{LANGUAGE} no longer used for @lang and @xml:lang
only do substitutions where necessary, default to 'en'
remove s///r, since it's perl 5.14 and higher D:
Fix setting/unsetting of language so forms continue to get translated.
ucfirst the locale names so the list looks self-consistent
Cosmetic fixes:
 * put country names in parens
 * put bare codes in square brackets
 * sort the list
sort correctly (wasn't ucfirst'ing there)
MBS-3518: Remove Chrome frame recommendation/warnings
Reorganize re: ocharles' suggestions
 * Remove _ prefix from _{un,}set_language
 * Pass a language directly to set_language
 * Move cookie munging to MB::S
 * Factor out the code to make the list of languages into an
   MB::S::Translation->all_languages method
Use 500px images everywhere applicable.
enable None radiobutton on detail pages
Merge remote-tracking branch 'ianmcorvidae/mbs-4713-none-vote-edit-details' into test

* ianmcorvidae/mbs-4713-none-vote-edit-details:
  enable None radiobutton on detail pages
Merge branch 'mbs-3518' into test

* mbs-3518:
  MBS-3518: Remove Chrome frame recommendation/warnings
Merge remote-tracking branch 'ianmcorvidae/mbs-4674-500px-covers' into test

* ianmcorvidae/mbs-4674-500px-covers:
  Use 500px images everywhere applicable.
Merge branch 'mbs-3590' into test

* mbs-3590:
  MBS-3590: Use memcached to atomically generate wizard session IDs
Merge remote-tracking branch 'ianmcorvidae/mbs-4117-language-switcher' into test

* ianmcorvidae/mbs-4117-language-switcher:
  Reorganize re: ocharles' suggestions  * Remove _ prefix from _{un,}set_language  * Pass a language directly to set_language  * Move cookie munging to MB::S  * Factor out the code to make the list of languages into an    MB::S::Translation->all_languages method
  sort correctly (wasn't ucfirst'ing there)
  Cosmetic fixes:  * put country names in parens  * put bare codes in square brackets  * sort the list
  ucfirst the locale names so the list looks self-consistent
  Fix setting/unsetting of language so forms continue to get translated.
  remove s///r, since it's perl 5.14 and higher D:
  only do substitutions where necessary, default to 'en'
  MBS-4117: language switcher   * Sets the language using the 'lang' cookie if it exists, falling back     to the accept-language header   * Sets the 'lang' cookie using a dropdown menu based on     DBDefs::MB_LANGUAGES (the list of available translations)   * Dropdown uses DateTime::Locale's native_name, when a locale exists     for that language, and the language code otherwise   * MBS-4853: $ENV{LANGUAGE} no longer used for @lang and @xml:lang