Added offset parameter to open() and ReadBuffer