Change to use self.__class__ in place of EasyDict for easier subclassing

I had a recent need for something very similar to EasyDict but with a change to `__getattr__` behaviour. It was impossible because the current `__setattr__` refers to EasyDict directly.

This change makes subclassing friendlier :)