I had the same thoughts myself. In the end though, I felt it was more important to eliminate this quite easy-to-make mistake, than have a 100% consistent interface.

Though, the other possibility would be to auto-register on subscribe. E.g., add an optional bool parameter ``createIfMissing``?