js.core: Add OverrideCaveatSetsValidator for use by wspr and jni.
js.core: Add OverrideCaveatSetsValidator for use by wspr and jni.

Before this CL, we had two different mechanisms to override
caveat validation.  Javascript (wspr) used a "hidden context key"
to pass a custom validator around, while Java (jni) used
security.SetCaveatValidator to set a custom function.  The wspr
technique overrode the validation for all caveat sets in a
blessing, while the jni technique overrode the validation of each
individual caveat.

This CL reduces us back to a single mechanism
security.OverrideCaveatSetsValidator.  This function is only
available if the "android", "nacl" or "wspr" build tags is set,
and will panic if called more than once.  We restrict to these
build tags as a way to limit the exposure of the API.

MultiPart: 3/6

Change-Id: I0955fe42357bb54b484ca28cff65f2d485420b93

vanadium/js,vanadium/js,vanadium/js,vanadium/js