addText method for textArea copies whole contents on each call
addText method for textArea copies whole contents on each call:
`textArea.text = textArea.text & text`
It gets slow for big texts and lots of sequential adds.

At least for Win32 the preferred way to avoid copying would be setting the cursor to the end of the text and replacing the selection with the added line. The issue with that is we lose current selection.

I made some working changes for Windows implementation and could prepare a PR, but It will certainly require a review: I'm neither WinApi nor Nim export, to put it mildly.