TrackInfoUpdateAsync cleanup, threaded control cleanup, other various cleanups and bugfixes.

As promised, here's a shorter PR. One of the reasons I did such long PRs before was to take more time to test, then more code would come and it appeared to be a vicious cycle :smile: 

* TrackInfoUpdateAsync: Moved to it's own class, cleaned up, added a callback. It's pretty specific to the NowPlaying*Fragments at the moment, I have further plans in mind.

* MPDControl: A class to unify simple (threaded) command sending. This breaks out what was in NotificationService and extends it a bit, which allowed for a sizable cleanup.

* MPDStatus/MixRamp fixes.

* Fix the status bar failing to update (bug from last PR).

* Tons of cleanups.