Minor changes to Render;

- Render the cursor if the interface is focussed.
- Use correct range operator to remove requirement to alter value of #viewport_height.
- Add temporary defaults.
Add Area class.

Conflicts:
	lib/vedeu/output/area.rb
Started working on Viewport concept for scrolling interfaces.
Add #refresh method to update the interface after the cursor moves.
Experiment with options.
Experimental stuff for scrolling, cursors and geometry.
Remove unused code.
Simplify by removing empty check and using #key?

- Whitespace.
Add more documentation, also;
- Fix whitespace.
- Remove commented out code.
Move exceptions into correct file.
Make #y and #x public.
Calculate offset for a cursor based on an Area and a Cursor.

- Simplify Area by using attributes rather than arguments.
- Remove unused exceptions and methods.
- Extract methods and reduce complexity.
- Rename #indexed_(x|y) to #(x|y)_indices.
Update Cursors;

- Use interface top and left for default starting coordinates for the cursor when adding.
- Rename #cursor method to #build.
- Update documentation.
Move and reorder methods.
Remove (x|y)_offset from Cursors.
Memoize call.
Make #visible? public.
Continued development.
Minor Cursor refactoring.

- Move #state to public, fix tests.
- Discourage direct updating of the Cursor attributes.
- Simplify after removing #update method.
Add more documentation, also;
- Add a test for #use.
- Remove redundant documentation.
- Add todos.