Add signature to SET_PROTOTYPE_METHOD and use args.Holder() in methods.

This prevents segfaults when a native method is reassigned to a different
object to corrupt `args.This()`.

Closes #6690.