REVERSE_INDEX implementation

This is the first in what will be a series of control sequence implementations, starting off with [REVERSE_INDEX](http://vt100.net/docs/vt100-ug/chapter3.html#RI). Currently, the steps used to reverse  index are:

1. decriment the scroll_offset
2. move cursor up
3. rerender the terminal view

My main use case for this feature was `man`, so once I could successfully scroll upwards, I knew that progress had been made. A newly introduced bug that I noticed was this  behavior:

0. `man cmake`
1. scroll down a bit
2. scroll back up
3. try scrolling back down, the terminal should not add any lines
4. scroll down (blindly) until reaching the farthest point yet in the manpage, the terminal should refresh showing the missed portions and adding the missing lines

Some potential future control sequences have been added to the `enum` along with markings specifying which sequences have been implemented or not.