Add partial support for HTMLElement.dataset

As brought up by issue https://github.com/tmpvar/jsdom/issues/961.

This PR supports getting and setting existing `data-*` attributes. From a brief conversation on IRC it seems like implementing support for adding new `data-*` attributes would be nearly impossible until `Object.observe` is available. Not sure if a partial feature is merge-able, but submitting the PR anyway to open the conversation. 

Supporting HTMLElement.dataset also requires an implementation of DOMStringMap, which is included here. I was not sure where to put that implementation, so just let me know where the most natural place is for it.