Generalize for_file: Allow any type that implements a new interface "UploadData". Add a new internal function for_generic that uses UploadData-types. for_file simply forwards to for_generic, as &Path implements UploadData
Add a new function for_buf, whose buffer also implements UploadData and hence also uses for_generic internally