ObjPtr<>-ify method/var handles, fix stale refs in tests.

Test: m test-art-host-gtest
Test: testrunner.py --host --interpreter
Bug: 31113334
Change-Id: I89ea84f7970899643e437161b598d3232a182e98
diff --git a/runtime/mirror/method_handle_impl.cc b/runtime/mirror/method_handle_impl.cc
index e8cacd9..433d4ba 100644
--- a/runtime/mirror/method_handle_impl.cc
+++ b/runtime/mirror/method_handle_impl.cc
@@ -42,10 +42,10 @@
   SetField64<false>(ArtFieldOrMethodOffset(), art_field_or_method);
 }
 
-mirror::MethodHandleImpl* MethodHandleImpl::Create(Thread* const self,
-                                                   uintptr_t art_field_or_method,
-                                                   MethodHandle::Kind kind,
-                                                   Handle<MethodType> method_type)
+ObjPtr<mirror::MethodHandleImpl> MethodHandleImpl::Create(Thread* const self,
+                                                          uintptr_t art_field_or_method,
+                                                          MethodHandle::Kind kind,
+                                                          Handle<MethodType> method_type)
     REQUIRES_SHARED(Locks::mutator_lock_) REQUIRES(!Roles::uninterruptible_) {
   StackHandleScope<1> hs(self);
   Handle<mirror::MethodHandleImpl> mh(hs.NewHandle(ObjPtr<MethodHandleImpl>::DownCast(