Add QUERY_FILETRANSFER REQUEST_SIZE command

This allows to query the current size of the file. Previously you could only get the size of the file from when it was first opened or had to issue a QUERY_FILE_EXISTS command that is significantly slower (as it requires a new connection to the backend)

(cherry picked from commit 5f47d6922e8e2d740ffd9353bf8d354a189ef80d)

Conflicts:
	mythtv/programs/mythbackend/mainserver.cpp
Add RemoteFile::GetRealFileSize()

Allows to query the current size of the remote file. If the file isn’t opened for write by the backend, the size will be cached and the backend will be queried only once

(cherry picked from commit 6290fd98f55bc11f78366324deb04bf84e40da16)
(cherry picked from commit 5266ceec09a512e9c5a221da85fac0598cadbb99)
Cache the size of the remote file for 500ms

Aim is to speed up common usage…

(cherry picked from commit 8c174135f305efbc7cc1ec8cc0aab4cf26525e4a)
Partial revert of c64141b0c0b7118ee28be2441374727a1af7c44c

We can use the previous readblocksize as it was adjusted during earlier reads. However we set the initial value in such a way that it will be automatically recalculated on the first call to RingBuffer::CalcReadAheadThresh()

(cherry picked from commit dddf14c050297a7bbb74459e3018e457a47d2489)
Set initial FileRingBuffer rawbitrate to 800

In continuation of dddf14c050297a7bbb74459e3018e457a47d2489

(cherry picked from commit 1da2a0ef0d645c0ed19932f478567a67a8048b38)
Return the actual file size rather than the one when the file was first opened