Add the remaining (known) repository Protocol subclassing
I pulled out a bunch of typing of functions/overrides to make this easier to land. We still don't have the protocol classes named the way we want, but at least everything is subclassed (unless I forgot to leave a comment on the class declaration line when dropping the zope interface stuff).