Subclass dict instead of object for attrdict

Reviewer: @rlane 

Subclass the dict object instead of the vanilla object
because it looks like we are replicating a lot of dict
behavior anyway.

This is a work in progress to get your feedback. 
I'm not sure it does precisely what you need yet.