[Translator] fix MessageCatalogueInterface::getFallbackCatalogue that can return null

also use inheritdoc for the implementation
[Translator] mention that the message id may also be an object that can be cast to string in TranslatorInterface and fix the IdentityTranslator that did not respect this
[Translator] fix phpdoc of MessageCatalogueInterface::add and ::replace
[Translator] optimized adding of resources and saving a call to array_unique
[Translator] fix typecast in transChoice
[Translator] fix metadata

- fix '0' problem
- only access metadata when implementing interface
- refactor code
- clarify phpdoc