Returntypehinting RFC

RFC'd by @morrisonlevi

PR'd for review + CI

https://wiki.php.net/rfc/returntypehinting
Hm.  The grammar for Closures with `use` statements comes unexpected.

I expected the return type hint to be part of the _function signature_, representing a single unit, always composed of parameters + return type in a single sequence:

```
function NAME ( [ PARAMETERS ] ) [ : RETURN_TYPE ]
```

The import of variables into the function's scope presents a different unit, separate from the function's signature?

```diff
-function ($value) use ($multiplier) : array {
+function ($value) : array use ($multiplier) {
   return array_fill(0, $multiplier, $value);
 };
```
That is, because the actual signature/synopsis of that function is:
```
array function ( mixed $value )
```

The use/import is a separate language construct, which wouldn't exist if the Closure was an actual method, whereas the function signature would stay the same:

```diff
-function ($value) : array use ($multiplier) {
+function fill($value) : array {
   return array_fill(0, $this->multiplier, $value);
 };
```

Thoughts?