carmack weeps

- whatever speedup fast_inv_sqrt once provided hardly feels worth the
trade-off of stepping to single precision floats
drawing-primitives refresh

- arc() draws circular segments relative to x,y and radius
- line() can now draw arcs from point to point
- oval() now takes `range` and `ccw` args to draw subsections of an
ellipse
- poly() draws regular polygons
- star() & arrow() moved their implementations to bezier.py
- star() now uses a sensible inner-radius if only an outer- arg is
provided