Add Tree::TreeNode.from_hash and #add_from_hash
Add tests for #from_hash and #add_from_hash
Override #add_from_hash on Tree::BinaryTreeNode

Unlike the general N-ary case, we need to ensure we don't add more than two
children to a node on a binary tree.
Move Hash conversion methods into a util file.
Add #to_h function, doc tweaks.
Restore license accidentally removed from json_converter.
Merge pull request #30 from jhamon/from_hash

Add mixin for Hash conversions. Thanks to @jhamon.