Support for Partial Indexes for PostgreSql and Sqlite

Support for Partial Indexes was available in Doctrine 1 following
http://www.doctrine-project.org/jira/browse/DC-82. This commit
reintroduce support for Doctrine 2. We use the same syntax with an
optionnal "where" attribute for Index and UniqueConstraint.

It is unit-tests covered and documented in manual.
Can you please convert those `elseif` blocks to `if` blocks? No `elseif` needed here as we return early anyways.