Make whatwg::get_encoding public.

It is useful by itself when dealing with multiple encoding hints (eg.
HTTP Content-Type and <meta charset>.)
Fix whatwg::get_encoding: ASCII only trimming and case-insensitivity.

Avoid &str.to_ascii() which fails when given a non-ASCII label.
Avoid allocating strings to match against in whatwg::get_encoding.

The added micro-benchmark goes from ~81200ns to ~280ns.
Rename whatwg::get_encoding to whatwg::encoding_from_label

This indicates that string labels, as opposed to just Encoding objects,
are involved.