paint app: basic user interface
shapes definition, state support, removing shapes