Add an AudioFormat struct

There are some details about the loaded sound that should be stored
with the Sound.  This will allow the sound to use this data easily.
Refactor Sound class to use AudioFormat

The sound class was loading the wav header into a pointer to an array,
which made understanding what was happening pretty difficult.  I've
cleaned up some of the functions and the class now uses the AudioFormat
struct to hold information about the sound.
Add bitRate variable to AudioFormat struct

The bitRate was being calculated from properties read from the wav file.
It's possible to read the byteRate from the wav header, ensuring that the
correct byteRate is used.