Touch screen support and improved manipulation and viewing

The changes that constitute this pull request use the Touch screen support from Elm (which still works for mouse pointer devices).  Single touch drag rotates, using SHIFT key, or 2 touches translate in XY plane, using ALT or CTRL key or 3 touches translate in XZ plane.

The Alt and Ctrl keys are sometimes buggy.  Those bugs seem to be due to Elm holding on to historic touches depending on when Alt key is released.

Manipulation is also more natural, where dragging near the circumference rotates along viewing axis (as is done for example in cmgui/Zinc).  Improvements also made to lighting, and initial camera position.