message: Make `ServerProtocolLoader` delegate to `ProtocolLoader`
  While the set of supported protocols and their implementation is
  different among servers and clients, the logic to load a specific
  protocol given a Smithy model is identical. This commit makes
  `ServerProtocolLoader` inherit from `ProtocolLoader` so that said logic
  can be reused among clients and servers.
diff: @@ -100,7 +100,7 @@ interface ProtocolGeneratorFactory<out T : ProtocolGenerator, C : CoreCodegenCon
  fun support(): ProtocolSupport
  }
  -class ProtocolLoader<C : CoreCodegenContext>(private val supportedProtocols: ProtocolMap<C>) {
  +open class ProtocolLoader<C : CoreCodegenContext>(private val supportedProtocols: ProtocolMap<C>) {
  fun protocolFor(
  model: Model,
  serviceShape: ServiceShape,
  