* r_cons_get_size should return the number of rows, why is there a "-1"?
* the newline at the end of the canvas converted to string (in
r_cons_canvas_to_string) make things shift up one line
* r_cons_canvas_write should consider "left" (which is the number of
chars available from x until the right side of the screen) and not
"left - 1". Moreover, since "slen" is at most the maximum number of
characters that we can print in that row, there is no need to check
if we can write those bytes
* r_cons_flush usually add a newline, but we shouldn't print it because
otherwise everything will shift up by one line