polygon is sometimes broken
Sometimes the `polygon` function seems to break and spew lots of strange output.

If you clone down http://github.com/sjl/coding-math and check out commit 3d6ba7a35004215b185674032cbba9b2d4a2e452 you can see an example.  Run with:

```
(ql:quickload 'coding-math)
(in-package #:coding-math.2d.demo)
(defparameter *demo* (make-instance 'cm))
```

I'm drawing a couple of stars onto the screen.  Each star has a list of points, which I draw the circles at.  I also draw lines between the points:

``` lisp
(defun draw-star (star)
  (draw-particle (getf star :center))
  ; (draw-polygon (getf star :points))
  (iterate
    (with points = (getf star :points))
    (for (p1 . p2) :pairs-of-list points)
    (draw-circle p1 3)
    (draw-line p1 p2)))
```

If you uncomment the `draw-polygon` call there it should fail with something like this:

![screenshot](https://i.imgur.com/9YGJKkg.jpg)
