Split CongestionController into send- and receive-side classes.

New class ReceiveSideCongestionController, extracted from CongestionController, and responsible for the
OnReceivedPacket processing.

Rest of the CongestionController moved to a new class
SendSideCongestionController.

To avoid breaking applications, CongestionController is redefined
as a union of these two classes, with no intended change in behavior.

With one exception: CongestionController::SetBweBitrates used to call
remote_bitrate_estimator_.SetMinBitrate, but after remote_bitrate_estimator_ was moved to ReceiveSideCongestionController,
it no longer does this.

BUG=webrtc:6847

Review-Url: https://codereview.webrtc.org/2752233002
Cr-Original-Commit-Position: refs/heads/master@{#17321}
Cr-Mirrored-From: https://chromium.googlesource.com/external/webrtc
Cr-Mirrored-Commit: 559af38a15f6590926759440002512b70d01ba58
13 files changed