Pitch: Allow Protocols to be Nested in Non-Generic Contexts

This pitch is good, but should at least come with a caveat about this spelling. Outside of a function, it would be a protocol extension.

fileprivate extension Abstraction {
  var impl: ResultType { // …
}

Without nested protocol extensions, switching to the function form will be necessary, trading good spelling for good scoping. :pensive: So I don't think this pitch should be implemented without being paired with nested extensions.