I think there is a set of very useful functions in `utils`, but the API is rather messy. I'd rather close this PR before attempting to clean up something. This is why I'm postponing this issue.