Creates MP3File data structure

This structure holds information about an MP3 file. MP3 files tags
are parsed as soon as the MP3File object is created, so accessing
to its data is possible right after instantiating the object.

Only valid MP3 files will be parsed. Files are checked before
being parsed by using is_mp3_file(path) method, which analyzes
if the file contains a valid magic number.
Parses header

Class ID3Header parses the header of the MP3 file. Header is 10
bytes long and it's located at the begining of the file. For now
it doesn't parses the size field as synchsafe integers haven't
been implemented yet, even though they should be added soon.

Header is also automatically parsed on MP3File class.