Try using @tempfile.size for TempObject#size

If `@tempfile` is available, TempObject should be checking `@tempfile.size` instead of doing equivalent of `File.size(@tempfile.path)`.  In my particular case, `@tempfile` is actually a delegate to a remote (S3) object that separately (and lazily) pulls metadata (like size) and the file contents.  This change would prevent the file contents to be fetched to disk to just compute the file size.