Throw 'SecurityError' upon cross-origin Location access.

As suggested in the HTML specification[1], IE and Firefox (and old
Opera) throw a 'SecurityError' exception upon attempts to access to
Location object properties cross-origin. Chrome and WebKit do not,
instead returning 'undefined' and writing an error to the console.

This has a few negative effects: developers are forced to hack around
access violations in two ways rather than having a single code path, and
(more annoyingly) developers are unable to avoid generating the error
message. See every ad on the internet for the effect on the console. :)

This patch aligns Blink's behavior to IE and Firefox's by adding
'SecurityError' exception to these access violations, which is the first
step towards getting rid of the console spam. A subsequent patch will
adjust the exception's message to contain some sanitized version of the
current access violation detail message, and drop the unavoidable console
messages. There will be much rejoicing.

[1]: http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#security-location

R=abarth@chromium.org
BUG=17325

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154376 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Support @viewport rules in UA and user stylesheets.

Patch from Rune Lillesveen <rune@opera.com>.

@viewport rules were added to ViewportStyleResolver via StyleResolver from
RuleSet::addChildRules. When addChildRules was called for the UA stylesheet,
the StyleResolver pointer was null and the rules were never added.

Fixed by keeping a vector of @viewport rules in RuleSet as we do for @page
rules and collect them before resolving in StyleResolver::addAuthorStyleSheet

BUG=257561

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

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