change sdm hierarchy a bit
better Features.__getitem__; move some utility functions
improve features docs a bit
support __add__ for features
update SDM classes for features class, better error handling, etc