Add Direction type
Add Semigroup and Monoid instances for Angle
Remove old direction functions operating on Angles
Update arrow code to use Direction
Change Arc code to use a Direction and a sweep Angle
Update everything else to use Direction
Wall: add instances for Polar

move some instances around,
remove some imports
fix header in Direction

remove extra language extension pragma
avoid use of `e` in Arrowheads
Use atan2 instead of atan
Export xDir, Direction module
Export Deform from 3D
Remove law-breaking AffineSpace instance

Direction R2 is not actually an AffineSpace.
for all Directions d, d .+^ fullTurn = d
therefore (d .+^ a) .-. d is not a for a >= fullTurn
angleBetweenDirs and rotate give nearly the same behavior
add atan2A function
atDirection is no longer specific to R2
revise arc functions to respect sign of Angle
glue circle into a Loop
add Transformable instance for Direction
Add UndecidableInstances pragma to Direction
 angleBetween is commutative

It is not right when the intent is to create a rotation between two vectors.