Issue 8307 and 13336 - fix documentation around return type inference and ref deduction

[Issue 8307](https://issues.dlang.org/show_bug.cgi?id=8307) - inconsistent treatment of auto functions
[Issue 13336](https://issues.dlang.org/show_bug.cgi?id=13336) - auto ref return deduced to be ref despite return value coercion
This also happens if the return statement expression for all return statements is `void`:

```d
void foo() {}
auto bar() { return foo(); }
static assert(is(typeof(bar()) == void));
```