Saycode Rework
Created by: N3X15
WIP, have some major bugs to fix still.
CHANGES
- Speech now uses the new /datum/speech for shuttling around speech data.
- Formatting is no longer injected as HTML into the message. HTML will be escaped and presented as normal text. Formatting is kept separate from the message.
- Speech is no longer rendered, encoded, unencoded, filtered, and re-encoded. Characters are left raw and unencoded until they reach someone's ears.
- Saycode logic flow documented. See docs/.
- Mutations and diseases can affect more of the message, including adding and removing classes without parsing HTML.
tl;dr eliminates a lot of the Guy says, "<SPAN!!!"
stuff.