Add type to represent "anything with a file descriptor"
Generalize TTYResize to any Fder
Generalise WithRawIO to arbitrary Fders