Define some cell standard attributes
Define KEY_SPACE
Adds FormattedTextImage to support character cell attributes

Attribute values are only stored if supplied to the self.put() method, thus
saving memory.
Adds FormattedDrawingContext to create context with cell attributes support

Inherits DrawingContext, ensures that the attibute value are well send to:
self.image.put
Add a convenient border() method to FormattedDrawingContext
Update module imports with recent additions

attributes, FormattedTextImage and FormattedDrawingContext
Adds support for some special curses KEY values

UP, DOWN, LEFT, RIGHT, ENTER and SPACE
fallback is still chr(key_code)
Check color support with self._curses.has_colors()
Disable cursor to get a clean display
Use StopIteration args to return something useful to the caller
Use character cell attributes in Curses display

Loops are now performed on cells, not lines

Note:
To avoid the scrolling error when writing to the lower right corner, first
put the entire line minus its first char and use insstr() to insert it.