Allow empty cases in alternations.

Fixes: #68
Moved the string diffing code to utils and made the algorithm configurable.

See discussion on #66
Use a character-based string diff for diffing hexdumps. Still not perfect, but better than the word-based one.
Include the helper functions used by diffString in the object exported by the utils module, and fix reference to leftPad.
Use the "control pictures" unicode chars to represent bytes < 0x20 in hex dumps.