first bash at cleaning up shapes. needs rewrite for perf and capabilitie...

...s