Add support for case-insensitive attribute value selectors

Selectors Level 4 adds the syntax '*[foo="bar" i]' for making an attribute
value selector case-insensitive. Add support for that.

Does not alter the actual case-sensitivity match - i.e. matching is
performed using Unicode case-insensitivity rather than ASCII which
the spec expects.

Based on patch by <jl@opera.com>.

BUG=366563

Review URL: https://codereview.chromium.org/330043003

git-svn-id: svn://svn.chromium.org/blink/trunk@179370 bbb929c8-8fbe-4397-9dbb-9b2b20218538