Added composer.json
API Hash autologin tokens before storing in the database.

Backported from 3.0, cc423c38fbc6755f4e29024590c1b42092b3a621.
Added travis support
Added README with build status
Added cms to travis requirements
Excluded or removed tests relying on actual webserver routing

The "sanitychecks" group excludes through phpunit.xml.dist.
Removed RestfulService->testHttpErrorWithoutCache()
since its not sufficiently isolated in terms of testing.
Has been refactored in 3.x, but too intrusive to backport.

Changes mainly necessary to get Travis builds passing,
since we don't want to start mucking around with
dynamically generated file-to-url mappings just to
get *unit* tests passing - as opposed to integration-testing
the whole environment incl. webserver.
API Rename Transliterator to SS_Transliterator to remove conflict with Intl extension
Merge pull request #977 from simonwelsh/rename-Transliterator

API Rename Transliterator to SS_Transliterator to remove conflict with Intl extension
Fixed DateTest timezone settings

Backport from 3.x, see d1a9e2b3 and 0aeda5c9
Support for composer-created themes dir structure

Due to git limitations, we can't check out the blackcandy
"parent" theme into themes/blackcandy/ directly, since that
would require sharing paths with git repositories of other themes.
Fixed HTML syntax in config-form.html
2.4.9 changelog
Copying request params before Core.php exec in PHPUnit bootstrap

Same behaviour as with 3.0 bootstrap.php and the
2.4 cli-script.php (which it is based on).
This allows to use GET switches which are evaluated in _config.php
files, e.g. db=<db-alias> settings for running tests
with various DBs without changing the underlying PHP config.
Update documentation of nginx configuration

- Avoid using "if" to check for file existence (use try_files instead)
- Replicate the behavior of the .htaccess files
- TODO: get static error pages to work
API Remove Content-Length setting from HTTPResponse (fixes #8010)

This reverts commit 356a367eb5d05bea3dfa2edaeabc52a2496b93b2.
We can't use headers_sent() to determine an accurate
content length, since PHP defaults to buffering a couple of bytes
even without ob_start() (see "output_buffering" setting).
This makes the patch harmful, since it breaks any responses relying
on more structure data, like removing closing brackets from JSON.
Which in turn breaks the CMS in horrible ways (see #8010).
See #7574 for context.
API: Use HTMLText as default for RSS Description

To allow for custom RSS descriptions (i.e. provided by a method rather than a DB field) and avoid double escaping a better default class for Description is 'HTMLText'. http://www.silverstripe.org/customising-the-cms/show/11606#post319519
Consistently exposed ManyManyList information through getters.
FIX Node updates in IE without non-object error

Bug was most prominent after page publication,
which triggers a node reload. It iterated through
all node attributes to assign them to the existing node,
which apparently includes some non-scalar attributes
that can't simply be copied in IE.
Merge pull request #1123 from chillu/pulls/revert-content-length

API Remove Content-Length setting from HTTPResponse (fixes #8010)
Include "media" attr for module customCSS() (fixes #8219)