Using the RichTextCtrl widget we are able to use advanced formatting in the console pannel. The formatting information is extracted from the text stream by searching for terminal escape sequences. The sequence values are taken from the colored package, which becomes a lazy dependency (imported only when the feature is activated).
The previous implementation (using the TextCtrl widget) has been extracted into a separate class.
The client code chooses between the basic or the rich class based on the richtext_controls configuration parameter. The default is to use the previous implementation based on TextCtrl.