TextWindow.cs: make chat history (in active window) expand when spammed (such as by Nightwatch).

Maximum expand size is set to 3000 line.
*If there's no spam, active chat history will maintain default size of 500 lines or current size.

Other commits:
minor thing 1): make scrollbar snap to bottom when at 5 lines to the bottom & when new text is added (currently it snap only if scrollbar is exactly at bottom)
minor thing 2): make mousewheel-scroll able to reach the actual bottom of active chat history, seem like it might miss 1 line.
minor thing 3): when doing "page up"/"page down"-click on the scrollbar, include 3 line from previous page for continuity.