EnigmaCurry/GMusicFS — pull request #24 by henry-nicolas (2014-03-25 15:02:25+00:00)
Title: Switch to mobileclient gmusicapi interface + musicmanager

This pull request switch from webclient to mobileclient.

The main reason behind this rewrite is the bug #23 (basically, gmusicapi is broken atm and an update isn't coming soon).
This migration trigger a few changes:
1. Song metadata dicts changed so the code is adapted.
2. With the new metadata, there are no more normalized version of the data, an internal normalize function has been written for that.
3. Mobileclient interface requires a valid device id to login. I choosed to use the MusicManager to generate a device id based on the MAC address. This has 2 benefits:
a. With the music manager it'll be possible to upload songs, later on
b. WIth an id linked to GMusicFS, you'r sure the app works for everyone (no need to have an Android Smartphone or desktop app already registered).
Side note: MusicManager interface needs oauth, so the first time gmusicfs is run, a perform_oauth is triggered and the user has to follow the prompt.
4. In Mobileclient, no more multi-part url so the multi-part specific code has been removed