Experimental Version of new Entity Editing UI/UX

This is the first cut at a new editing UX

* It has the same editModels.js features for adding new entities - but changes the select, translate, and stretch behavior
* rotate is not yet supported, but new overlay features for displaying rotation disks has been added
* stretching of entities is now done through "grabber" handles visible on the selection box

Additional scripting support was added to make this possible:
* new planar overlays for circles/ellipses and rectangles
* ray intersection testing was added to 3D overlays
* boxes and spheres were updated to support "stretching"
* dashed lines were added to wire/line overlays

NOTE: This is still experimental. It's not fully functional. Some warnings:
* you can stretch objects in strange ways that may cause problems.. be careful not to stretch an object to a negative dimension
* sometimes when starting a second move or stretch operation the tool will jump your entity to an old location or size