Imported from CleanCocoa/DeclarativeTextKit#1
To support a Buffer implementation on Swift.String, the protocol needs to be changed from using typealiases to associatedtypes.
Making the Buffer protocol a "PAT" will require structural changes that ripple through all types.