diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000000000000000000000000000000000000..70619017537657aa481f267c561f7711e904515e
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,18 @@
+; This file is for unifying the coding style for different editors and IDEs.
+; More information at http://editorconfig.org
+
+root = true
+
+[*]
+indent_style = space
+indent_size = 4
+end_of_line = lf
+insert_final_newline = true
+trim_trailing_whitespace = true
+
+[*.bat]
+end_of_line = crlf
+
+[*.yml]
+indent_style = space
+indent_size = 2
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000000000000000000000000000000000000..926a808fc7cbf99dd6eb81d9bb29258a9d4355be
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,36 @@
+# Define the line ending behavior of the different file extensions
+# Set default behaviour, in case users don't have core.autocrlf set.
+* text=auto
+* text eol=lf
+
+# Explicitly declare text files we want to always be normalized and converted
+# to native line endings on checkout.
+*.php text
+*.default text
+*.ctp text
+*.sql text
+*.md text
+*.po text
+*.js text
+*.css text
+*.ini text
+*.properties text
+*.txt text
+*.xml text
+*.yml text
+.htaccess text
+
+# Declare files that will always have CRLF line endings on checkout.
+*.bat eol=crlf
+
+# Declare files that will always have LF line endings on checkout.
+*.pem eol=lf
+
+# Denote all files that are truly binary and should not be modified.
+*.png binary
+*.jpg binary
+*.gif binary
+*.ico binary
+*.mo binary
+*.pdf binary
+*.phar binary
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..48920d4229ec99000b05d2a357e41084621ee43d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+/tmp/*
+/logs/*
diff --git a/.htaccess b/.htaccess
new file mode 100644
index 0000000000000000000000000000000000000000..8cfc1eafd8ff84ce91711d91d80d0805adcce80d
--- /dev/null
+++ b/.htaccess
@@ -0,0 +1,5 @@
+<IfModule mod_rewrite.c>
+    RewriteEngine on
+    RewriteRule    ^$    webroot/    [L]
+    RewriteRule    (.*) webroot/$1    [L]
+</IfModule>
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000000000000000000000000000000000000..b9b337904a097ed2f108a283f051248570482bc8
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,18 @@
+language: php
+
+sudo: false
+
+php:
+  - 5.4
+  - 5.5
+  - 5.6
+
+before_script:
+  - sh -c "composer require 'cakephp/cakephp-codesniffer:dev-master'"
+  - phpenv rehash
+
+script:
+  - sh -c "vendor/bin/phpcs -p --extensions=php --standard=vendor/cakephp/cakephp-codesniffer/CakePHP ./src ./tests ./config ./webroot"
+
+notifications:
+  email: false
diff --git a/vendor/aura/intl/.gitignore b/vendor/aura/intl/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..c67ffa442df639b0ff7fc08c743aad28edb28d8b
--- /dev/null
+++ b/vendor/aura/intl/.gitignore
@@ -0,0 +1 @@
+tests/tmp
\ No newline at end of file
diff --git a/vendor/cakephp/bake/.gitignore b/vendor/cakephp/bake/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..bc959c5331898f45a66f1fc0dbca9f745b84ca62
--- /dev/null
+++ b/vendor/cakephp/bake/.gitignore
@@ -0,0 +1,3 @@
+/composer.lock
+/phpunit.xml
+/vendor
diff --git a/vendor/cakephp/debug_kit/.gitignore b/vendor/cakephp/debug_kit/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..97a7d015d40e103dc1587737aca002171133aa10
--- /dev/null
+++ b/vendor/cakephp/debug_kit/.gitignore
@@ -0,0 +1,19 @@
+*.diff
+*.err
+*.orig
+*.rej
+*.swo
+*.swp
+*.vi
+*~
+.DS_Store
+.cache
+.project
+.settings
+.svn
+errors.err
+tags
+/nbproject/
+/composer.lock
+/vendor
+/phpunit.xml
diff --git a/vendor/cakephp/migrations/.gitignore b/vendor/cakephp/migrations/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..73cb528c4ef67d6edaf801aa6c0a31e35c62d0e9
--- /dev/null
+++ b/vendor/cakephp/migrations/.gitignore
@@ -0,0 +1,2 @@
+plugins/
+vendor/
diff --git a/vendor/cakephp/plugin-installer/.gitignore b/vendor/cakephp/plugin-installer/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..7602b69a25f6ec0aa9242e0aeed1a88e0719809f
--- /dev/null
+++ b/vendor/cakephp/plugin-installer/.gitignore
@@ -0,0 +1,2 @@
+/vendor
+/composer.lock
\ No newline at end of file
diff --git a/vendor/dnoegel/php-xdg-base-dir/.gitignore b/vendor/dnoegel/php-xdg-base-dir/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..57872d0f1e5f46731396e93c4e22b149809798f8
--- /dev/null
+++ b/vendor/dnoegel/php-xdg-base-dir/.gitignore
@@ -0,0 +1 @@
+/vendor/
diff --git a/vendor/jakub-onderka/php-console-color/.gitignore b/vendor/jakub-onderka/php-console-color/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..05ab16b84f7d7211a53c74c9a70cece62cc3e843
--- /dev/null
+++ b/vendor/jakub-onderka/php-console-color/.gitignore
@@ -0,0 +1,3 @@
+build
+vendor
+composer.lock
diff --git a/vendor/jakub-onderka/php-console-highlighter/.gitignore b/vendor/jakub-onderka/php-console-highlighter/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..70f6ec0695ce4945b88ab22ae3b03453a298f361
--- /dev/null
+++ b/vendor/jakub-onderka/php-console-highlighter/.gitignore
@@ -0,0 +1,4 @@
+/.idea/
+/build/
+/vendor/
+/composer.lock
\ No newline at end of file
diff --git a/vendor/mobiledetect/mobiledetectlib/.gitignore b/vendor/mobiledetect/mobiledetectlib/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..48b35e7145500f4ba164e8109e051073ccbb1041
--- /dev/null
+++ b/vendor/mobiledetect/mobiledetectlib/.gitignore
@@ -0,0 +1,11 @@
+vendor/
+nbproject/
+/*.buildpath
+/*.project
+/.settings
+/error.log
+/export/nicejson
+.idea/
+*.iml
+/coverage
+/phpunit.phar
diff --git a/vendor/psr/log/.gitignore b/vendor/psr/log/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..22d0d82f8095e9c0ed572776afb47f9ca293ce00
--- /dev/null
+++ b/vendor/psr/log/.gitignore
@@ -0,0 +1 @@
+vendor
diff --git a/vendor/psy/psysh/.gitignore b/vendor/psy/psysh/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..856c6ca96ba3d4874217d810e793ac5fc88ecdef
--- /dev/null
+++ b/vendor/psy/psysh/.gitignore
@@ -0,0 +1,5 @@
+vendor/
+composer.lock
+manual/
+__pycache__
+.php_cs.cache
diff --git a/vendor/robmorgan/phinx/.gitignore b/vendor/robmorgan/phinx/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..e34718277c4b6799448b91dfe7cc52d0bfe6bddf
--- /dev/null
+++ b/vendor/robmorgan/phinx/.gitignore
@@ -0,0 +1,34 @@
+# These all appear to be hidden files from various IDEs & Operating Systems.
+# These probably belong in ~/.gitignore_global and not in here.
+# See https://help.github.com/articles/ignoring-files
+.DS_Store
+.buildpath
+.project
+.settings
+.idea
+
+# These seem to be generated by the build tool for releasing a tagged version of this software
+build
+*.tgz
+dist
+
+# Don't commit composer.phar, or the .phar our build tool generates
+*.phar
+
+# this is the code coverage generated when running phpunit.
+tests/log
+
+# not positive, but this probably generated by the unit tests?
+migrations
+
+# sphinx generates HTML files for the documentation here
+docs/_build
+
+# composer installed dependencies
+vendor
+
+# this is user specific settings for running phpunit to override the defaults in phpunit.xml.dist
+phpunit.xml
+
+# sqlite test database
+phinx_testing.sqlite3
diff --git a/vendor/symfony/config/Symfony/Component/Config/.gitignore b/vendor/symfony/config/Symfony/Component/Config/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..c49a5d8df5c6548379f00c77fe572a7217bce218
--- /dev/null
+++ b/vendor/symfony/config/Symfony/Component/Config/.gitignore
@@ -0,0 +1,3 @@
+vendor/
+composer.lock
+phpunit.xml
diff --git a/vendor/symfony/console/Symfony/Component/Console/.gitignore b/vendor/symfony/console/Symfony/Component/Console/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..c49a5d8df5c6548379f00c77fe572a7217bce218
--- /dev/null
+++ b/vendor/symfony/console/Symfony/Component/Console/.gitignore
@@ -0,0 +1,3 @@
+vendor/
+composer.lock
+phpunit.xml
diff --git a/vendor/symfony/filesystem/Symfony/Component/Filesystem/.gitignore b/vendor/symfony/filesystem/Symfony/Component/Filesystem/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..c49a5d8df5c6548379f00c77fe572a7217bce218
--- /dev/null
+++ b/vendor/symfony/filesystem/Symfony/Component/Filesystem/.gitignore
@@ -0,0 +1,3 @@
+vendor/
+composer.lock
+phpunit.xml
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/.gitignore b/vendor/symfony/yaml/Symfony/Component/Yaml/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..c49a5d8df5c6548379f00c77fe572a7217bce218
--- /dev/null
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/.gitignore
@@ -0,0 +1,3 @@
+vendor/
+composer.lock
+phpunit.xml