Opening an already open path creates a linked doc

This is a basic working implementation of #884. If a user opens a path that is already open, it just opens a linked version of that doc. Here are some known todos that I still need to address:

- [X] When closing a linked doc, fix :sub-docs to actually disj the removed linked doc
- [X] Also [unlinkDoc](http://codemirror.net/doc/manual.html#unlinkDoc) when closing a linked doc.
- [X] Add a behavior to customize [options to linkedDoc](http://codemirror.net/doc/manual.html#linkedDoc).
- [X] Add behavior to toggle opening a linked doc on an existing path

The first two do point out LT is duplicating the effort of tracking linked docs. Do we still want :sub-docs? We could provide a wrapper to get a doc's linked docs using [iterLinkedDocs](http://codemirror.net/doc/manual.html#iterLinkedDocs).

Aside from these minor todos, Chris could you elaborate on what you said on #884 around "I've been operating under some assumptions with where information is stored that will become invalid in a document-first approach." It sounds like there is more than just this. If you could update or add a new list like the one above that would be great.

Eager to give LT some linked doc love.