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.
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.
API Change tracker allows explicit dirty messages
BUG Fixed issue with UploadField not detecting changes
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.
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
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
Merge pull request #2620 from kinglozzer/patch-2

Set default encoding for compass
Remove TinyMCE change detection on insert (breaks IE8)

The detection is triggered on first load, and in IE8 the
inserted value doesn't equal the value already in the textarea field.
That's possibly due to whitespace or encoding differences,
but they have the same character length.

Tried fixing this by whitespace removal, didn't work:
if((original || '').replace(/[\s\t\n\r]/g, '') != (value || '').replace(/[\s\t\n\r]/g, '')) {

In the end, we're already detecting changes through a 5s interval
triggering the save() method on the editor if the field is focused.
The impact of this removal is that after inserting an image,
it'll take a few seconds for the change detection to kick in
(and thus highlight the "save" button and ask for confirmation
when navigating away without saving).

See d12ae82f70038ef08f444e7e6e0157491228319b for context.
Conditionally send "ID" val in UploadField

The "ID" form field is not always defined,
for example in the "Replace" tab of the "versionedfiles" module
(which uses GridFieldDetailForm). Since the path to that
detail form relies on the "ID" in AssetAdmin->currentPageID(),
and does an is_numeric() check to support the "root" folder,
we need to leave the "ID" param out completely.

Checked this without versionedfiles module in admin/assets
as well as a custom UploadField in CMSMain.
Merge pull request #2630 from chillu/pulls/uploadfield-id

Conditionally send "ID" val in UploadField
Merge pull request #2565 from colymba/progressive-images

NEW GDBackend can save interlaced images
Merge pull request #2603 from chillu/pulls/htmleditor-upload-replace

Default UploadField to replace files
Allow ASSETS_PATH to be overridden like ASSETS_PATH (via jthomerson)
Merge pull request #2599 from tractorcow/pulls/3.1-uploadfield-formchanged

BUG / API - Change tracking for UploadField
BUG Fixes issue where items could be deleted from a has_many relation by an entirely unrelated HasManyList calling delete on that item.