Refactoring 'Node' to have 'key' and optional 'data' property, updating 'TinyBST.insert()' to accept second argument

Updating version