Minor updates while reading the basic-mapping page

The only arguable changes involve a few spots where I either removed something I thought was too technical and not valuable (e.g. talking about the metadata mapping pattern).
Changes thanks to @Ocramius
Merge pull request #786 from weaverryan/patch-1

Minor updates while reading the basic-mapping page
Update DDC719Test.php to be compatible with MsSQL

Apparently Doctrine adds "with (nolock)" now for the mssql platform, but the test has not been updated yet.
Update DatabaseDriverTest.php

SQL Server does not support unsigned integers
A nicer way of detecting the platform

Inspired by https://github.com/doctrine/doctrine2/blob/master/tests/Doctrine/Tests/ORM/Functional/DatabaseDriverTest.php#L188
HHVM compatibility: func_get_args

All func_get_args() calls have been moved to the top of the methods
because HHVM doesn't keep a copy of the original args for performance
reasons.

See facebook/hiphop-php#1027 for details.
Merge pull request #790 from javer/hhvm-func_get_args

HHVM compatibility: func_get_args
Implemented "contains" operator for Criteria expressions
[DDC-2668] Fix trim leading zero string
Improved error messages in Paginator: LimitSubqueryOutputWalker

The already existing follow-up check throwing "Not all identifier properties can be found in the ResultSetMapping: %s" is a much more technical description.

If $sqlIdentifier is empty (count 0) it can be concluded that there are no mapped results. An alternative error message could thus be "The Paginator does not support queries without mapped results." (line 153).

Possibly '!=' on line 154 could be replaced by '>' because i think this is the only situation that can occur. But since i don't know this for sure, i left it like i found it.
Improved error messages in Paginator: LimitSubqueryOutputWalker



The already existing follow-up check throwing "Not all identifier properties can be found in the ResultSetMapping: %s" is a much more technical description.

If $sqlIdentifier is empty (count 0) it can be concluded that there are no mapped results. An alternative error message could thus be "The Paginator does not support queries without mapped results." (line 153).

Possibly '!=' on line 154 could be replaced by '>' because i think this is the only situation that can occur. But since i don't know this for sure, i left it like i found it.

Didn't use elseif in this commit as per Stof his suggestion.
Update query-builder.rst

expresion substr changed to substring as of
http://www.doctrine-project.org/jira/browse/DDC-382
Merge pull request #795 from sabzeta/patch-1

Update query-builder.rst
remove unused test case
Merge pull request #799 from FabioBatSilva/leftover-test

remove unused test case
Update SqlWalker.php fixed wrong GROUP BY clause on SQL Server platform

Without this patch a query would like like:
```
SELECT c0_.Country AS sclr0
FROM Continent c0_ WITH (NOLOCK)
WHERE c0_.Country = 38
GROUP BY sclr0
```
Using the column alias in the GROUP BY clause. However this is not allowed on SQL Server. References:
1. http://stackoverflow.com/a/3841804
2. http://technet.microsoft.com/en-us/library/ms189499.aspx (Logical Processing Order of the SELECT statement)

The correct query should be:
```
SELECT c0_.Country AS sclr0
FROM Continent c0_ WITH (NOLOCK)
WHERE c0_.Country = 38
GROUP BY c0_.Country
```
Respect unsigned fields when tables get converted to entities.

This is working on our mysql setup, however i have no idea of the consequences of this change when using other RDBMSes.
Merge pull request #802 from fasmide/patch-1

Respect unsigned fields when tables get converted to entities.
Merge pull request #792 from FabioBatSilva/DDC-2668

[DDC-2668] Fix trim leading zero string