Add extended playlist support & persistent storage

Fixes #1
Merge branch 'playlists'