FIX: wrong class name being returned

This resulted in an error since the returned class name did not exist.
Note that this only happened when someone subclassed GridFieldDetailForm
and did not subclass GridFieldDetailForm_ItemRequest.
Revert "Merge pull request #2390 from phptek/2389"

This reverts commit 58da57dd1b6b47d7e2e5a8ab109268bbae8e1c3b, reversing
changes made to 8864256601bb295f8a52ad2eea04c4e1f8087c1b.
NEW GDBackend can save interlaced image

Disabled by default use config GDBackend.image_interlace: 1 to enable
Default UploadField to replace files

Honours the $overwriteWarning setting, rather than warning
about overwritten files, and when that warning is acknowledged by the user,
create a new file instead. We need to set this as close to
the Upload->load() call as possible, since it depends
on non-deterministic config state.
i18nSSLegacyAdapterTest setting wrong arguments for manifest.

Currently if you run i18nSSLegacyAdapterTest twice in a row you
get errors about classes not existing, because the class manifest
doesn't get set correctly during the test setUp() method.
API Change tracker allows explicit dirty messages
BUG Fixed issue with UploadField not detecting changes
Revert "Style destructive actions destructively"

This reverts commit 3851ef9f2cc3a9a0301b5367e8788dd839af65b7.
Breaks button alignment in CMS.
Merge pull request #2598 from halkyon/test_execution_error

i18nSSLegacyAdapterTest setting wrong arguments for manifest.
Fixed support for single stage in Versioned

This used to work in 2.4, so is considered a regression.
To test, simply add a Versioned("Stage") extension to
some record in 2.4 vs. 3.1.
BUG Fix the password reset message to be shown consistently.

If we detect any of the password reset GET params, it's safe to assume
that someone intended a password reset, regardless of other conditions.
added removeFromGroupByCode() function to Member.php

I was using the addToGroupByCode() function today and it would have been handy to have a removeFromGroupByCode() so I decided to add one.
Merge pull request #2607 from mateusz/fix-reset-message

BUG Fix the password reset message to be shown consistently.
API JS i18n files with short locale names, generated by build task

The files are uploaded to transifex.com now, which means we needed
to consolidate the file names (= locales). Since Transifex doesn't allow
arbitrary JavaScript structures, we're using an intermediary JSON
format which gets transformed into the JS used by the framework.

See https://github.com/silverstripe/silverstripe-buildtools/commit/b59f3858afd5c46219a42b04b2742c7d247199c9 for generator logic.

Fixes https://github.com/silverstripe/silverstripe-framework/issues/2499
Merge pull request #2411 from simonwelsh/circ_ref

Revert "Merge pull request #2390 from phptek/2389"
Merge pull request #2604 from chillu/pulls/versioned-single-stage

Fixed support for single stage in Versioned
BUG Fix undefined index ID
Merge pull request #2621 from tractorcow/pulls/3.1-undefined-index

BUG Fix undefined index ID
Bad redirect in ChangePasswordForm->doChangePassword()
Merge pull request #2624 from JayDevlin/bad-redirect-in-changepasswordform

Bad redirect in ChangePasswordForm->doChangePassword()
Set default encoding for compass

See https://github.com/haml/haml/issues/269. Seems that OS X Mavericks causes this to occur, even when system default is set to utf-8.

Force encoding in admin scss as well