[0.11.2] Overhaul internal bytes processing and drop Python 3.5 support.
This under-the-hood change significantly simplifies and improves internal bytes
processing by using hte plum-py
(pack / unpack memory) package instead of
a custom hexadecimal string interface like before. This patch also includes
minor, benign bug fixes with hexadecimal processing. These changes will
facilitate future development (e.g., support for adding new tags to images).
Since the plum-py
package only supports Python 3.6 and higher, this version
drops support for Python 3.5.