refactor, add support for other dict-like methods (closes #8)