Support fetching entities by aliased name

See #385 (this PR supersedes it)

The final aim is allowing something like:

```php
$user = $em->find(UserInterface::class, 123);
```

This PR depends also on doctrine/common#342
`array[]` is not a valid type. This should be reverted to `array`