Revert "Use AsyncInvoker in PeerConnection instead of MessageHandler"

This reverts commit bb19276a325a5f9fce4afa245aa14ec2a4b1a41d.

Reason for revert: breaks downstream project

Original change's description:
> Use AsyncInvoker in PeerConnection instead of MessageHandler
> 
> Bug: webrtc:9702
> Change-Id: I89d66d1165a096601aed37b8febad60620073899
> Reviewed-on: https://webrtc-review.googlesource.com/97180
> Reviewed-by: Seth Hampson <shampson@webrtc.org>
> Commit-Queue: Steve Anton <steveanton@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24515}

TBR=steveanton@webrtc.org,shampson@webrtc.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:9702
Change-Id: Ibfe507cd1593f7000e11f9a17313a016307381cb
Reviewed-on: https://webrtc-review.googlesource.com/98302
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24591}
diff --git a/pc/peerconnection.h b/pc/peerconnection.h
index bd9ef24..2942709 100644
--- a/pc/peerconnection.h
+++ b/pc/peerconnection.h
@@ -52,6 +52,7 @@
 class PeerConnection : public PeerConnectionInternal,
                        public DataChannelProviderInterface,
                        public JsepTransportController::Observer,
+                       public rtc::MessageHandler,
                        public sigslot::has_slots<> {
  public:
   enum class UsageEvent : int {
@@ -287,6 +288,9 @@
     uint32_t first_ssrc;
   };
 
+  // Implements MessageHandler.
+  void OnMessage(rtc::Message* msg) override;
+
   // Plan B helpers for getting the voice/video media channels for the single
   // audio/video transceiver, if it exists.
   cricket::VoiceMediaChannel* voice_media_channel() const;
@@ -391,7 +395,7 @@
   void PostSetSessionDescriptionSuccess(
       SetSessionDescriptionObserver* observer);
   void PostSetSessionDescriptionFailure(SetSessionDescriptionObserver* observer,
-                                        RTCError error);
+                                        RTCError&& error);
   void PostCreateSessionDescriptionFailure(
       CreateSessionDescriptionObserver* observer,
       RTCError error);
@@ -1029,7 +1033,6 @@
 
   int usage_event_accumulator_ = 0;
   bool return_histogram_very_quickly_ = false;
-  rtc::AsyncInvoker async_invoker_;
 };
 
 }  // namespace webrtc