Correct return types.

Correct return types both in doc blocks and code if possible.

For methods like etag() I would rather like to simplify the return type from `@return string|null` to just "string" for example, though. Especially where there cannot be any empty valid strings or '0' strings involved.
And besides @ndm2 s valid and good points it is also something for the developer to better read and understand the code at hand. And IMO the outlined semantic difference in meaning between explicit null and simple void does that.