Ok, a new chat system was a bad idea.
Then how about this:
Split the screen in two (right half the current console, left half an "echo" console where "sticky" messages are echoed, and never disappear (the last N always visible).
Then, add several client variables that govern the sticky area: max messages, % of screen width, type filter filter (chat / team chat / whom I fragged / who fragged me / my team fragged, and so on and so forth)
This way, you can have a perma-chat by just setting a right filter. But this thing can be much more!
Also quite compatible with mods, I think, as they probably expect the upper left to be occupied.