Reimplement detectAtToken using SWITCH and CASE

I have retained the existing treatment of hasEscape. I suspect that we generally accept escapes due to the wording of
http://www.w3.org/TR/CSS2/syndata.html#at-rules
http://www.w3.org/TR/CSS2/syndata.html#value-def-identifier
and that we don't accept escapes in particular identifiers due to the wording of
http://www.w3.org/TR/css3-page/#syntax-page-selector

BUG=

Review URL: https://chromiumcodereview.appspot.com/19836003

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