add DS.Errors object

It took me a while, but here is a new take on `DS.Errors` object. @wycats are you still ok with the idea?