refactored the interfaces and types.  only able to persist one node.  must implement bit index node to continue