stash and free std filehandles

STDIN, STDOUT and STDERR are created once per instance, and handed
out on request. We now clean up all handles but the previously
mentioned when gc_free-ing a filehandle.
msvc does not like names like stdin