FIX Correct Zend_Locale fallbacks in i18n/DateField/DateTimeField

Due to the recent change of translations to transifex, some
locales changed their names, which prompted a fix to
i18n::get_available_translations() (see 00ffe7294).
This caused a regression where short locales are determined
from the YAML file names (e.g. "en"), but weren't matched up
with fully qualified locales from get_available_translations() (e.g. "en_US").
Since this list is used in the admin/myprofile dropdown for the Member.Locale value,
it didn't match up with any entries and defaulted to the first one ("Africaans").

Note that the behaviour of admin/myprofile is still a bit weird:
It defaults the locale on new members to the one set for the current administrator.
So if a site defaults to en_US in _config.php, but the admin happens to view
his backend in de_DE, all members he creates default to de_DE as well.

Thanks to @tractorcow for contributing and peer reviewing!
FIX Privilege escalation through Group hierarchy setting (SS-2013-003)

See http://www.silverstripe.org/ss-2013-003-privilege-escalation-through-group-hierarchy-setting/
FIX Privilege escalation through Group and Member CSV upload (SS-2013-004)

See http://www.silverstripe.org/ss-2013-004-privilege-escalation-through-group-and-member-csv-upload/
FIX Privilege escalation through APPLY_ROLES assignment (SS-2013-005)

See http://www.silverstripe.org/ss-2013-005-privilege-escalation-through-apply-roles-assignment/
3.1.0-rc2 changelog
FIX Disallow permissions assign for APPLY_ROLES (SS-2013-005)

See http://www.silverstripe.org/ss-2013-005-privilege-escalation-through-apply-roles-assignment/
Safety note on DataObject::$validation_enabled
Updated translations
Updated changelog
BUG Fix regression introduced in #2356 (method call on non-object)
Merge pull request #2445 from tractorcow/pulls/3.1.0-http-add_cache_headers-fix

BUG Fix regression introduced in #2356 (method call on non-object)