Introduce draft 5.

In this commit, draft 5 is just a different instance of draft 4.
Increase test coverage of different drafts.

In this commit, draft 5 documents are still tested for draft 4
compliance.
Ensure link is added when embedding an object.
Refactor: remove test against type.
Update README.
Merge branch 'refs/heads/master' into draft5

Conflicts:
	README.rst
Prevent embedding a document in itself.
Merge branch 'draft5': Support for draft 5.

This commit adds support for draft 5. Specifically, it makes `embed`
automatically add a corresponding link to the receiving resource if no
such link already exists.

This commit also expands back-compatibility testing.

Conflicts:
	test/test_document.py