These names still sound quite generic. You don't like `extend(frame: Frame)` because it'll require two method calls?