Fix warnings on 32 bit systems

- Change format specifiers to not make assumptions about integer and
  size_t sizes
- Change audio hash function to shift a different amount based on
  sizeof(size_t)
I think it's due to the fact that it has an ancient standard library version.