io: added 'size' URI parameter. If there is no 'range' header or there is 'size' uri parameter, read chunk of data, get total size and continue reading instead of running lookup command and then reading data in chunks. Updated async_device reader to read 'size' bytes from 'offset', previously 'size' field ment total size of the object