Allows a user to safely extract a Vec<&mut T> out of a Vec<*mut T> provided the vec is empty.
```rust fn test() { let mut v = VecStorage::new();
{
let k = &[1usize, 2, 3, 4, 5];
let j = v.as_borrow();
j.extend(k.iter());
assert_eq!(*j[0], 1);
j.clear();
}
{
let k = &mut [5usize, 4, 3, 2, 1];
let j = v.as_borrow_mut();
j.extend(k.iter_mut());
assert_eq!(*j[0], 5);
}
} ```