Make `HeadersExtractorTrait` handle class extensions gracefully
Make `HeadersExtractorTrait` handle class extensions gracefully

Use `static::` instead of `self::` and make the private methods protected instead.

This avoids the trait breaking if it is used in a base class that will be extended, and one of the trait methods is extended as well.

This is a safer default for traits in general.

oscarotero/Gettext,oscarotero/Gettext