Playlist support

Adds a bunch of new functionality for working with Playlists. Some TODOs remain. 

Includes a simple example that creates a new playlist and adds some songs to it.

Includes #20

Fixes #18, #19