A few more test cases...
Add in unsafe versions of Get and Put.
Lots more updates to the code.