InitSendable (see robotpy/robotpy-commands-v2#22 for example) takes a non-copyable type as an argument. Since the smart-holder branch of pybind11 can invalidate objects, we might be able to automatically detect and fix this case at compile time. Would need some thought.