updating method to take IO stream as payload

current webhdfs client needs payload to be sent in http to be in
memory, and does not allow any way to set IO stream so that it can read
in chunks and writes to TCPscoket directly. This update provides a way
to provide File handle (IO) as payload that will get recognize
automatically and will stream the payload in chunks so that it does not
need to have entire file in memory.