The only permitted keys are str, and the rest are silently ignored. This is another bug in his implementation (only the first line should be indented, but both are).
Your code is fine - you're not storing everything twice, but he is (in _set_both()).
Your code is fine - you're not storing everything twice, but he is (in _set_both()).