Redirect and/or gag stdout/stderr.
Documentation (with examples): https://stebalien.github.io/gag-rs/gag/
TODO:
General:
* Windows support.
* Better error handling?
Redirect:
* Be generic over references. That is, accept both a reference to an AsRawFd or
an AsRawFd. Unfortunately, I don't know if this is even possible. Borrow
doesn't work because I really want the following constraint:
impl<F> Redirect<F> where F: BorrowMut<T>, T: AsMut<AsRawFd>
so I can write
file.borrow_mut().as_mut()
but that would be ambiguous...
Buffer:
* Deallocate the buffer as it is read (FALLOCFLPUNCH_HOLE) if possible.