reflect/protoregistry: add (*Types).Register{Message,Enum,Extension}

Add type-safe methods to register message, enum, and extension types.
Deprecate the NewTypes function and the (*Types).Register method.

Add (*File).RegisterFile and deprecate the NewFiles function and
the (*File).Register method.

Updates golang/protobuf#963

Change-Id: Ie89e77526e0874539e9bd929ca0ba8d758e65a6e
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/199898
Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com>
diff --git a/internal/impl/legacy_file.go b/internal/impl/legacy_file.go
index bccaede..b61a135 100644
--- a/internal/impl/legacy_file.go
+++ b/internal/impl/legacy_file.go
@@ -70,4 +70,4 @@
 	*protoregistry.Files
 }
 
-func (resolverOnly) Register(...protoreflect.FileDescriptor) error { return nil }
+func (resolverOnly) Register(protoreflect.FileDescriptor) error { return nil }