func NewClient(client *http.Client, deviceID string) (*Client, error) {
	if client == nil {
		return nil, fmt.Errorf("client is nil")
	}
	if deviceID == "" {
		return nil, fmt.Errorf("device ID is empty")
	}
	return &Client{client, deviceID}, nil
}
NewClient creates a new Music Manager client with the given device ID
and underlying HTTP client.  The supplied client must be capable of
authenticating requests with the OAuth scope Scope.
package musicmanager
import (
	"fmt"
	"net/http"
	"net/textproto"
	convert "github.com/lxr/go.google.musicmanager/internal/convert"
	mmdspb "github.com/lxr/go.google.musicmanager/internal/download_proto/service"
	mmldpb "github.com/lxr/go.google.musicmanager/internal/locker_proto/data"
	mmssjs "github.com/lxr/go.google.musicmanager/internal/session_json"
	mmudpb "github.com/lxr/go.google.musicmanager/internal/upload_proto/data"
	mmuspb "github.com/lxr/go.google.musicmanager/internal/upload_proto/service"
)
const Scope = "https://www.googleapis.com/auth/musicmanager"
type Client struct {
	client *http.Client
	id     string
}