Rename data buffer struct
Use actual names for ID3 frames
Remove incorrectly defined and unused tags
Separate ID3 tag setting from FLAC tag reading
Properly handle multiple strings for one tag
Simplify album artist tag adding

Fixed text tag addition code makes this okay.
Remove unused function
Remove FLAC code from set_picture_tag
Add configure options for using FLAC or MP3
Add extra warnings to makefile
Add Buffer class for use by *coders

This introduces C++ code, which will be used to refactor some of the code.
Add additional comments in Buffer class
Ensure int size is >= 4
Change Buffer integer type to long
Add MP3 encoder class and Encoder class interface
Add tell() method to Buffer to get current position
Switch to standard values to identify tags

This enables different encoders and decoders to coordinate metadata.
Add handling for track or disc numbering in MP3
Add Encoder method to set gain in dB
Add const qualifier in encode_pcm_data signature

Also correct argument name to avoid confusion in interface.