ART: Update invoke-custom implementation

Adds type checking for bootstrap arguments and support for variable
arity bootstrap arguments.

Adds tests for malformed bootstrap arguments, variable arity bootstrap
arguments, and invocation arguments to passed to the CallSite's
MethodHandle.

Removes unnecessary wrapping when j.l.Error's are raised during BSM
invocation.

Removes BSM argument type checking from verifier. This is now
performed during invocation.

Bug: 73927525
Test: art/test/run-test --host 952-invoke-custom
Change-Id: Id43226edad64ad9812e4ba1a069dfb70b8196dad
16 files changed