Change asyncReadFile: method's interface, add range parameter to allow random read part of file