Uses py3 collections.UserDict if possible
Merge pull request #19 from jacobvalenta/py3x-support

Add Python 3 UserDict support