Remove support for {return,native,concrete}Type overrides in Bindings.conf.

We have no reason to support non-default type names, and this commit corrects
the computations for callbacks (which needed the override until now).
Add [foo=bar i] case-insensitive attribute selectors.
Rewrite the user-agent stysheet(s)

Based on https://html.spec.whatwg.org/multipage/rendering.html
rather than http://dev.w3.org/csswg/css2/grammar.html
Make Event::new take enumerated values instead of booleans (fixes #3643)
use rust-encoding to correctly(?) set utf16 strings for cmdline args as expected
implement cef_string_utf8_to_utf16()
implement cef_string_utf16_to_utf8()
remove rust-encoding usage from cef
use enc.len() for cef_string_utf8_to_utf16 conversion size
Fix selection of fallback fonts. Fixes monospace fonts in rust guide.

Previously, any font template that could not be found would return
an item from the last resort font family. Now, the last resort font
family is only searched if the entire list of supplied font families
is empty.
handle str::from_utf8() failure, improve return calls
Add #[privatize] to allow enforcing private fields for struct definitions
Simple privatizations
Privatize InheritTypes
Expose user agent option to DOM navigator interface.
Privatize Attr
Privatize Comment
Privatize DocumentType
Privatize EventTarget and EventListenerEntry
Privatize File