decouple DocumentObserver from LiveDevProtocol

Change DocumentObserver initialization and move it to a separated file
to make it more testable.

Restore LiveDevProtocolRemote to its initial state by removing
getRelated method and DocumentObserver injection until
we have an extension mechanism in place. DocumentObserver is now being
injected by LiveHTMLDocument as it does for RemoteFunctions.
add initial unit testing for DocumentObserver

add unittests.js file and 1 unit test for related documents.