added search, and compare functions, added colours, tags, and listener/play count to np