@kyleabeauchamp: What do you think is the appropriate number of functions here. I realize that it was I who asked for these three, but now they seem like a little superfluous -- i'm not sure if the in-place one just adds complexity with no benefit. Maybe just `transform` and `compute_transformation` would be sufficient? I dunno. Opinions?