Added support for albums, rewritten from scratch