[DRAFT, WIP] PSR-5: PHPDoc Standard

This PR represents the current state of affairs with the PHPDoc Standard. Until this description and subject is altered this PR is considered a Work in Progress and not ready for a final review.

All feedback is welcome, please direct this to the PHP-FIG mailing list to prevent noise in this PR. This PSR covers so many subjects that unless the discussions are separated by topic that it will probably be quite impossible to follow in this PR.

I would also request that people open a thread per issue they would like to discuss and not combine several issues in a single mail; this will help to keep noise-levels down in discussions and for me to loook back or filter important information.

TODO items are tracked in the issue tracker for this PSR: https://github.com/phpDocumentor/fig-standards/issues
_Technically_ you are correct, if you are to catch the return value of a method without return statement then you will have a NULL. But in documentation you are talking about semantics and intentions, the method does not intentionally return null, it intentionally returns nothing (hence: void) which is not the same thing.

For example, if I have a getter then it might return that object or null, indicating it is not set. This would be documented as `@return MyObject|null` as the clear intention is that null is passed. A setter, in a non-fluent object, does not return anything and you can only trust that the return value is not to be used, that is what `@return void` means. By providing void you make it clear to any consumer of your method that there is no return value and you do not trust anything that you might pick up from the return value.