Clear fd when closing a file handle to prevent "dangling" descriptors

We can run into a situation with MoarVM where a double close can
close an arbitrary, innocent file.  Consider:

```perl6
    my $fh := nqp::open($filename); # let's say it's FD 3
    # do stuff
    nqp::close($fh);
    my $other_fh := nqp::open($other_filename); # 3 again!
    nqp::close($fh); # closes 3! o_O
```