Song transfer API

This PR adds an API to play songs that are stored on the mobile device.

The raw data is first transferred to the Espera server, stored in a temporary file and then added to the playlist.

- [x] Create a second socket for data transfer
- [ ] Figure out why the heck the unit tests pass, but the exact same data can't be deserialized when it comes over the network
- [ ] Store and actually play the song