added BinaryTool and Binary classes to extend encoding/decoding to other forms of binary data