Wall: avoid name shadowing

also some indentation changes
make Tetrahedron a newtype on V4

To use the functor intstance, and improve type safety
by requiring exactly 4 vertices.
cabal: update version bounds

require latest STL
allow latest versions of others' libraries
move most of wifflebox example into reusable modules

These modules could use much cleanup & generalization.
examples: use binary STL!
Use `intervals` for envelopes
WIP: funnel model