Could we also explicitly document that `free()` and `isFreed()` actually delegates to `data`?