Fix Glacier fileobj hash calculation.

Fixes #2488 by only decoding from `bytes` when necessary. This remains
backward compatible with the existing Python 2 behavior while fixing
the regression. Going forward, Python 3 **requires** that binary files be
opened in **binary** mode.

cc @jamesls, @kyleknap