As reported by clang-tidy-8.
Implements a custom std::streambuf to avoid creating temporary std::string objects and thus optimizing image decode. Suggested by @artemp in https://github.com/mapbox/mapbox-gl-native/pull/5417#issuecomment-227700063.