Rename insert to put and member to contains.

 - Starting refactoring to support negative membership
   as specified in the paper.

 - Add a new test for single root node case.
Refactor put to be more standard pattern match at fn.

 - Continuing to implement little bits of declarative existence.
Fix issue with typespec's when running 'mix dialyze'

- Bool occupied bit was missing possible nil value.