I'd rather just rely on the autogenerated C++ stuff. I agree that the registration stuff is (slightly) better, but since I don't use it in other packages, I won't remember how it works.