Ensure setIn can set undefined as a value.

Wrote tests illustrating failure case first (they did fail). Fix causes tests to pass.

Closes #245