MINOR:added padding to ui-dialog-title so that it doesn't sit flush with the edge of the dialog box
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)
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.
Remove old routes
FIX Avoid infinite loops on ?isDev=1 and Deprecation class

If any of the functionality triggered by Director::isDev()
was causing deprecation errors, the system would go into
an infinite loop. Since the only way to cause this is the DB
checking functionality, we disable that for Deprecation.
Side effect of this change: You can't show deprecation notices
on a live site by forcing the session into dev mode.
Updated fieldgroup class and example code
Added chosen.js support to dropdown in fieldgroup
Fixing expanding/collapse CMS menu targeting wrong element

If a user clicks the log out button (for example) and the menu is
collapsed, the menu expands and then you have to press log out
again
API Disable discontinued Google Spellcheck in TinyMCE

Replaced by browser-based spellchecking if available (Chrome, Firefox),
with instructions on how to use PSpell as an alternative.
Validate 'archiveDate' user data in Versioned

Not a security issue as such, since the user input is sanitized
before being used in Versioned->augmentSQL(). But it shouldn't
reach the session state either, since that's commonly assumed
to be sanitized data, and it leaves unnecessary room for error.

strtotime() has fairly loose validation rules around dates,
but its a good "first line of defence".
i18n documentation - added note for caching in multi language modules
Tagged 3.0.6-rc2
Revert "Merge pull request #2390 from phptek/2389"

This reverts commit 58da57dd1b6b47d7e2e5a8ab109268bbae8e1c3b, reversing
changes made to 8864256601bb295f8a52ad2eea04c4e1f8087c1b.
Update 3.0.6.md

Add reference to information disclosure in Versioned.php (SS-2013-006)
Merge pull request #2413 from ss23/patch-1

Update 3.0.6.md
Add how to for custom GridField row actions.
BUGFIX: added <param> tag to ContentNegotiator filtering
BUG Fixing tabindex added to CreditCardField when tabindex is NULL

The tabindex increment *should* only be done if there is a tabindex
that has been set on a CreditCardField already, otherwise it breaks
the tab ordering.