Most players/tools can cope with MP3 files which have some bytes of junk
after the ID3v2 tag just fine, e.g. ffmpeg shows just
```
[mp3 @ 0x559e1f4cbd80] Skipping 1670 bytes of junk at 1165.
```
and most players can play the file just fine.
This change makes the tag editor also more resilient, allowing it to skip
a certain amount of junk bytes before a known container is detected. It
will also skip a certain amount of junk MPEG audio frames.
This should fix all non-erros, leaving only warnings which
are indeed potential problems.
The following warnings should be safe to ignore:
* Conversions of various offsets from uint64 to
std::streamoff/int64 are safe because such offsets have
been obtained via tellg() and other functions
returning std::streamoff in the first place.
* It also works vice-versa since tellg() should not
return negative offsets with exceptions enabled.
* Conversions from char to unsigned char are also ok.
* Unused diag arguments can be ignored (those might be
useful later).
* Annotate all intended fallthoughs.