Don't force chunked transfer on 0-length file-like object.

Only switch to chunked if we don't know the length of a file like object. This fixes the case of trying to transfer a 0-length file - chunked upload was being forced. Services like S3 that disallow chunked upload will fail.