[ticket/11531] Add basic set of functional tests for new avatar system

This currently includes tests for the gravatar, remote avatar, and upload
avatar drivers. The local avatar driver is currently not supported. Two
tests currently fail and have been marked as incomplete. One failure is
due to an issue with Symfony's DomCrawler that exists in Symfony < 2.2.
The other one is caused by a bug in the way remote avatars are treated.
According to my tests, this bug also exists in phpBB 3.0.11 and has been
reported in the tracker: http://tracker.phpbb.com/browse/PHPBB3-11534

PHPBB3-11531
[ticket/11531] Add acp and ucp groups functional tests for avatars

The test for the acp and ucp groups settings are currently marked as
incomplete due to a bug that causes the settings to not show an error
when incorrect data is entered. However, the avatar data is not saved.
That means that even though the error treatment seems to correctly work,
the user is never informed of the issues with the submitted avatar data.

PHPBB3-11531
[ticket/11531] Use assertContainsLang() where possible

PHBB3-11531
[ticket/11531] Remove incomplete flags for tests after merging PR #1404

Issues should be fixed by the now resolved ticket PHPBB3-11535:
http://tracker.phpbb.com/browse/PHPBB3-11535

PHPBB3-11531
Merge branch 'develop' of https://github.com/phpbb/phpbb3 into ticket/11531
[ticket/11606] remove preg_replace() /e modifier in make_clickable()

PHPBB3-11606
Merge branch 'develop' of https://github.com/phpbb/phpbb3 into ticket/11531
[ticket/11531] Add changes for supporting modified testing framework

Additionally, the groups avatar is deleted after the avatar tests in the
ucp groups page in order to prevent issues with other tests that expect
that no avatar has been set for the admin group.

PHPBB3-11531
[ticket/11620] Add testable facade for sessions.php

Since many functions in session.php have global variables inside the function,
this exposes those functions through a testable facade that uses testable_factory's
mock global variables to modify global variables used in the functions.

 This is using the facade pattern to provide a testable "front" to the functions in sessions.php.

 PHPBB3-11620
[ticket/11620] Add test for test_extract_current_page

PHPBB3-11620
[ticket/11620] Remove accidental argument from testable_facade.

PHPBB3-11620
[ticket/11620] Rename class_functions_test -> extract_page_test

Renaming this file because it is going to contain a large data provider,
so I'd rather split this test out.

PHPBB3-11620
[ticket/11620] Add data provider to extract_page

These test cases were taken from a live session,
more test cases should be added to test specific
functionality in this function.

PHPBB3-11620
[ticket/11620] Add extract_current_hostname

Add a tests for extracting the current hostname from session.

PHPBB3-11620
[ticket/11620] Fix quotes in extract_hostname_test

PHPBB3-11620
[ticket/11620] Add commas in extract_page_test

PHPBB3-11620
[ticket/11620] Make testable_facade non-static, expand.

Make the class functions of testable_facade no longer static methods,
but a class based one and expand the methods to be filled in, in later commits.

PHPBB3-11620
[ticket/11620] Add ipv6 test cases and remove extra arguments.

PHPBB3-11620
[ticket/11620] Remove unneeded functions from testable facade

There are functions listed in testable facade that don't have a lot of dependencies,
instead mostly just take the input and perform database functions on them.
These can be tested without a testable facade function and so will be removed.

PHPBB3-11620
[ticket/11620] Add validate_referrer test

Add a test for the validate_referrer function.

PHPBB3-11620