create separate classes for ID3 tags and clean up mess from previous implementation