I wonder if we should add a similar generalised timeout parameter to the Fileop class? It seems sensible, but probably out of scope for this PR :)