downloadbuffer: EOS generation in push mode
Added logic for EOS generation in srcpad loop function
Added a new variable eos_sinkpad in downloadbuffer. This is used for identifying EOS. This is set when we get EOS event on sinkpad. And unset when we get flush stop or segment event. It is expected that when this variable is set the sink pad writing position will be pointing to the end of the downloaded file. We may use upstream size for knowing when to generate EOS. But if we have got seek, the upstream size won't be equal to the download file size. So we are using eos_sinkpad and write a position to decide when to generate EOS.