Update SQLServerPlatform.php by adding methods related to schema.

The platform indicates support for schema's here: https://github.com/doctrine/dbal/blob/master/lib/Doctrine/DBAL/Platforms/SQLServerPlatform.php#L129

But is missing relevant methods:
schemaNeedsCreation() --> to detect if schema creation is needed
and
getCreateSchemaSQL() --> to create a schema
Update CreateSchemaSqlCollector.php setting default namespace/schema name

The namespace is used as name for the database schema. For SQL Server the default schema name is "dbo" and not "default".
Using use statement for Doctrine\DBAL\Platforms\SQLServerPlatform
Fixed logic error
Added test with alternative shard chooser
Merge pull request #377 from vlastv/patch-1

Fixed logic error in Sharding component
Put the responsibility to give the default schema name from CreateSchemaSqlCollector to the Platforms (abstract, sqlserver, postgresql)
Added relevant test methods for added methods on SQLServerPlatform
Fixed a small mistake where method getDefaultSchemaName was declared as protected instead of public.
This patch solves bug http://www.doctrine-project.org/jira/browse/DDC-2687
and takes inspiration from this PR https://github.com/doctrine/dbal/pull/374 which was written for this bug http://www.doctrine-project.org/jira/browse/DDC-2622
Merge pull request #375 from flip111/patch-1

Update SQLServerPlatform.php by adding methods related to schema.
Adjusted test CreateSchemaSqlCollectorTest::testGetQueriesForPsql the
default schema name is public for postgresql not default. Added debug
statements to test travis-CI.
Made cleaner code and remove unneccessary checks.

1. combine the regexes into one. The only thing that needs to be captured
is the alias. Used a non-capturing group for "AS " to avoid confusion and
have cleaner regex. It tries to match "Table.Column Alias" or
"Table.Column AS Alias". (line 861)
2. No fallback on line 865 like "$column['table'] . '.' .
$column['column']" this wouldn't make sense as this can not be possible
when it's a wrapped query. Better not insert some random SQL that's gonna
confuse the hell out of everybody.
3. Removed "($column['hasTable'] ? $column['table']  . '.' : '') .
$column['column']" because the original regex always tries to match the
table name. Therefor hasTable will always be true or the entire function
fails anyway. (this references line 868 now) (this was unit tested on
mysql, postgresql and sql server and did not increase errors/failures)
Put back some old code and fixed test case.

Apperently the doModifyLimitQuery function does not only cover SQL
generated by ORM (Makes sense to use DBAL as seperate component). Therefor
it can happen that a column name does not include the table and so the old
logic was valid anyway. (line 867-869)

Fixed the unit tests to use real column names instead of aliases.
Removed trailing whitespace
Merge pull request #383 from flip111/patch-5

SQL Server Paginator bug fix
specified stable 2.4.* releases of doctrine/common in composer.json
Merge pull request #384 from shieldo/patch-1

specified stable 2.4.* releases of doctrine/common in composer.json
Fix some LGPL occurances to MIT
Added default namespace when no schema support

The current implementation uses the schema name as namespace name.
Some platforms don't support schema's, but a namespace name still needs to
be present. Added namespace name 'default' when there is no default schema
name.