Since we already made an ArrayBuffer, this copying to Iterator and back to an ArrayBuffer will be inefficient. Can you also add a version of `BlockManager.put` that takes an `ArrayBuffer`? Make sure it avoids copies like the previous one did.