got rid of pointer ownership transfers that werent intuitive