refactor Id3v2Frame module and add tests