add EventSource interface
Merge pull request #45 from hussachai/EventSource

add EventSource interface
Splitting HTMLDocument from Document

* getElementById() returns Element, not HTMLElement
* Reorder and regroup attributes for legibility
* Deprecate non-working or outdated attributes