update BOLA, now works better alongside other rules
Created by: spiterikevin
Changes include:
- BolaRule now uses ThroughputHistory instead of doing its own throughput estimation.
- Remove BolaAbandonRule - just use AbandonRequestRule.
- Store bolaState in a Dict rather than in a metric.
- When choosing BOLA through MediaPlayer API, DroppedFramesRule, SwitchHistoryRule and InsufficientBufferRule are still included.
- Remove logic that is equivalent to InsufficientBufferRule from BolaRule.
- BolaRule no longer assumes that it is the only rule making ABR decisions.
- Improve readability and comments.