Does it make sense to make the ! methods "finish" or just do `grow` and `finish_grow`? Typically the ! method idiom in ruby indicates that the method is destructive. It seems like all of these are actually destructive.