basic support for screen outline

- added a screen object which defines various platform screen sizes e.g.
iphone, ipad.  Select can be used to pick the relevant platform.
- simplified drawing.  LayoutEditor.ts manages a single rendering order,
and code can request to draw a given thing (e.g. shape, selection).  We
then find the relevant context for that thing and redraw all of the
things in that context.
- split SelectionList into a seperate class
- misc fixes for tools that lose focus.
- shape deletion is now managed in a seperate list (the selection is
also told if we delete a shape)
- removed propertyStyle
- gulpfile no longer crashes on tsc errors.