chat improvements: JSON for errors, scroll to bottom