Use a separate file handle for file truncation & allocation
Rename functions, and fix error handling
Merge branch 'markbenvenuto-fallocate-restructure' into fallocate-restructure