Unseal js.Any.

There was no real reason for js.Any to be sealed, actually, and
it opens opportunities to define custom types in user-space.
Mark js.Dynamic.{select,update}Dynamic with @JSBracketAccess.

This removes two compiler primitives.
Add `@JSBracketCall` to generalize js.Dynamic.applyDynamic.

`@JSBracketCall` can be used on any method in a raw JS type that
has at least one non-repeated parameter. It will be translated
into a JS apply method where the method name is the first parameter.

This removes a bit more of the magic of js.Dynamic.
Factor the implementation of literal.applyDynamic{,Named}.