Added view module & extract cursor from buffer

View is a kind of window into the buffer. It renders part of the buffer
than can fit inside the current window. It also contains the cursor and
looks after drawing the status bar.