Allow orderBy to reference associations

If I specify an order-by clause on a to-many association, e.g. `@OrderBy({"foo" = "ASC"})`, where foo is a to-one-association on the target entity, the collection is sorted by foo_id (this behaviour is implemented in BasicEntityPersister::getOrderBySQL()).

This works fine. However, Doctrine\ORM\Tools\SchemaValidator complains that foo is not a field.

This change makes the validator accept order-by clauses on associations where the target entity is the owning side, and the association is single-valued (AFAICT this is the same restrictions that BasicEntityPersister uses).
actually, this can even be simplified:

```php
if ($targetMetadata->isCollectionValuedAssociation($orderField)) {
    // ....
    continue;
}

if ($targetMetadata->isAssociationInverseSide($orderField)) {
    // ...

    continue;
}

if (!$targetMetadata->hasField($orderField) && !$targetMetadata->hasAssociation($orderField)) {
    // ....
}