return empty metadata collection if none do exist

The PropertyMetadataContainerInterface defines that the method
getPropertyMetadata() has to return an empty collection if no
metadata have been configured for the given property. Though, its
implementation in the ClassMetadata class didn't check for
existence of such metadata. This behavior led to unexpected PHP
notices when validating a property or a property value of a property
without any configured constraints (only affects the new 2.5 API).
Additionally, the getMemberMetadatas() didn't check for existing
array keys as well which has also been fixed.
minor #11615 [Validator] return empty metadata collection if none do exist (xabbuh)

This PR was merged into the 2.3 branch.

Discussion
----------

[Validator] return empty metadata collection if none do exist

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        | [The reference to the documentation PR if any]

Backport of #11614 for Symfony 2.3 and 2.4.

Commits
-------

f5bc18d return empty metadata collection if none do exist
[Validators] Fixed failing tests requiring ICU 52.1 which are skipped otherwise
Merge branch '2.3' into 2.4

* 2.3:
  [Validators] Fixed failing tests requiring ICU 52.1 which are skipped otherwise
  return empty metadata collection if none do exist
Merge branch '2.4' into 2.5

* 2.4:
  [Validators] Fixed failing tests requiring ICU 52.1 which are skipped otherwise
  return empty metadata collection if none do exist
[Validator] Fixed missing use statements
Merge branch '2.5'

* 2.5:
  [Validator] Fixed missing use statements
  [Validators] Fixed failing tests requiring ICU 52.1 which are skipped otherwise
  [FrameworkBundle] Fixed validator factory definition when the Validator API is "auto" for PHP < 5.3.9
  return empty metadata collection if none do exist