Fix the createValue call to match the functionality applied on initialization

This also includes a simple test case that will probably go towards addressing #9.  A second test case is included to ensure that the same logic is applied on put. /cc @Raynos