rewrite tests to cover more specific ranges and new types
Refactor to implement the new MessagePack spec

This drops the Symbol type and the name BananaPack. We now fully
implement the new MessagePack spec, and take advantage of it's 3
`ext8`, `ext16` and `ext32` types for our string-with-encoding type.

For Strings which are tagged `UTF-8`, the `str` types from the
MessagePack spec are used. For Strings which are tagged `ASCII-8BIT`
the `bin` types from the MessagePack spec are used.
update docs
add why doc back
update readme
fix a few compiler warnings
bump major version
update Gemfile.lock
give more meaningful unpack errors
remove symbol support entirely
delete reference to symbol support
Merge pull request #10 from brianmario/new-msgpack-spec

Refactor to implement the new MessagePack spec