FIX: GridField button styling

Remove all top/bottom margins from buttons and apply to GridFieldButtonRow component. Ensure that all buttons are added to a suitable GridFieldButtonRow in ModelAdmin, SecurityAdmin and Group.
FormFields now allow setting of extra CSSClasses en masse

Each CSS class passed in to `addExtraClass` or `removeExtraClass` will be set as their own key in the `extraClasses` array

Also make `Form` consistent with `FormField`
Adding tests to `FormField` and `Form` for extra classes

Added tests that were missing from `Form` and ones for my new logic
FIX Empty Datefield with defined min or max has non-object error thrown

When submitting a Datefield with no value but with a min / max config date, the validate() function attempts to access a function on $this->valueObj (which is a non-object)
Updated field class to use doubleborder mixin
BUG Fieldgroup styling
fixed undefined offset #2276
Minor bug fix to show link description field 

When adding a link, the description field was present, but hidden. Adjusted javascript to show the description field
FIX: pass controller as reference inside closure.

Non referenced causes segfaults on PHP <= 5.3.8 environments when opening subtrees in the CMS. Likely the cause of silverstripe-cms/issues/803.
Changelog note on form method limitations

See 14c59be85e9ec53cb2f0b3e9d0d8ce7569d913c6.
Raised by Fara Rustein of Deloitte Argentina (CVE-2013-2653).
FIX Flush on memory exhaustion and headers sent
FIX Include flushtoken when install redirects to successfullyinstalled
Merge pull request #2284 from wilr/closure_this_reference_fix

FIX: pass controller as reference inside closure.
Merge pull request #2278 from jonshutt/patch-1

Minor bug fix to show link description field
Merge pull request #2277 from joernroeder/3.1

fixed undefined offset #2276
Docs: Consistent arg quoting in <% require %> (#1614)
Merge pull request #2271 from ARNHOE/3.1-twotoneborders

Updated field class to use doubleborder mixin
FIX Token redirect where in IIS a / needs adding between host & url
FIX Constants magic_quotes handling needs function from Core
Preempt fatal errors when making some function calls on an empty ArrayList

The function "first" on ArrayList uses the PHP function "reset", which
returns false if there aren't any elements in the array. Two functions
inside ArrayList use this function, "canFilterBy" and "byID". I've
changed these functions to catch the possibility of a false return from
first().