Begin separating out basic grid logic into matrix objects.
Change how targets work. Update style.

Instead of having a screen object own a target, each target will own a matrix, which is like how a screen used to be except without the target to keep updated. Now targets ask for their own updates.

I've also decided to do away with constructor-style functions in favor of more direct prototypal inheritance. The advantage of this is that it is nicer invoking functions the normal way.
Decide at fetching time whether to return the "empty" element of a matrix.

Instead of initially setting every element to the empty element, set them all to null and then return the empty element whenever null is looked up.
Fix iteration of matrix elements in refresh.
Update cursor to use matrix interface and generalize to sequences besides strings. Remove defunct screen module.