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.
Refactor partial into options array

This coherent with what is done for Table. All platform specific things
are grouped into an options array. Eventually flags should be migrated
into options as well.
Adapt formatting to pre-existing content
Default/Custom Entity Repository for Entity Repository Generator
Code Style fixes
simple fixes
Added NS checking
className fix: If namespace is not set then ClassName will be cut of
Private method EntityRepositoryGenerator::generateEntityRepositoryNamespace() changed to protected
Reverted visibility for EntityRepositoryGenerator::generateEntityRepositoryNamespace()
Surround ! with spaces according to code style
Visibility for EntityRepositoryGenerator::$repositoryName
Visibility for EntityRepositoryGenerator::generateClassName()
Add QueryBuilder::addSelect()
Merge remote-tracking branch 'upstream/master' into EntityRepositoryGeneratorDefaultRepository
Unit Tests && simple fixes
Corrected names to DDC3231
Unit Tests && simple fixes
visibility changed && few simple fixes
simple fixes