playlist: add publish/unpublish methods