Add a ensure_utf8 argument to WM_clipboard_text_get so callers don't have to handle validation themselves. Copying non-utf8 text into the Python console and buttons was possible, causing invalid cursor position and a UnicodeDecodeError accessing ConsoleLine.body from Python.