ID3v2.2, examples, and perfect hash tables

- Added ID3v2.2 writing support
- Improved ID3v2.2 reading
- Added method for changing tag/frame versions
- Added a couple of examples to the crate documentation
- Use rust-phf to convert frame IDs between versions and for frame
  description lookup