Change logger to stream, decode HTML messages
- Using a WritableStream instead of manually buffering is a good idea
- Chat messages are logged with HTML entities decoded (< instead of &lt;)