Restructure specification sections.
Add spec-additions.rst with info on recaptcha and common event fields.
move matrix-generic content to new matrix-doc git project
move swagger JSON from synapse project to matrix-doc project
Note that this breaks federation
remove debugging logging for signing requests
Storage for pdu signatures
SYN-103: Ignore the 'origin' key in received EDUs. Instead take the origin from the transaction itself
Make sure to return an empty JSON object ({}) from presence PUT/POST requests rather than an empty string ("") because most deserialisers won't like the latter
Add support for org.matrix.custom.text.html

This format will remain undocumented as it is not yet suitable for
introduction into the specification.
Merge branch 'develop' into event_signing
Remove org.matrix.custom.text.html event type and replace it with 'format' and 'formatted_body' keys on m.text messages
Add unsanitizedLinky filter to fix links in formatted messages.

This filter is identical to ngSanitize's linky but instead of
sanitizing text which isn't linkified in the addText function,
it doesn't.
Remove warning since the end result is still $sanitize'd
persist hashes and origin signatures for PDUs
Sign outgoing PDUs.
Include hashes of previous pdus when referencing them
move gendoc into matrix-doc project
Hash the same content covered by the signature when referencing previous PDUs rather than reusing the PDU content hashes
move 'age' into 'meta' subdict so that it is clearer that it is not part of the signed data