This moves all communication with Mpv's unix socket into another tokio task, and uses message passing through clonable mpsc channels to receive commands to execute, and to send responses.
- Split content into more files - Refactor TypeHandler impls - Add serialization traits to public structs/enums