use byte-storage-address instead of buffer-offset; remove the 20 different versions in the codebase