Bug 923904 - Tests. r=mccr8

We land these before actually landing bug 923904, because we want to build the
tests for bug 968335 on top of the same infrastructure.
Bug 968335 - Add accessors to the script settings stack entries themselves, not just the globals. r=bz
Bug 968335 - Add an API to determine if a given AutoCxPusher corresponds to the stack-top cx push. r=bz

This patch, and those following, are part of an epic quest to make this API
work properly despite the fact that we don't yet have GetEntryGlobal. See
the comment a few patches forward.
Bug 968335 - Use an AutoCxPusher directly in Auto{Entry,Incumbent}Global. r=bz

This will let us ask whether the AutoCxPusher is stack-top.
Bug 968335 - Make Auto{Entry,Incumbent}Global inherit ScriptSettingsStackEntry. r=bz

This will allow us to downcast from a stack entry to an AutoEntryGlobal, and
thereby get at the AutoCxPusher.
Bug 968335 - Implement GetCallerPrincipalOverride. r=bz
Bug 968335 - Implement Cu.getWebIDLCallerPrincipal. r=bz
Bug 968335 - Tests. r=bz