[graphs] Move graphs to their own dir, add comparison graphs.
[actor] Make supply curves vary by round; value() returns a vector; change const-ness.
[curve] Implement PiecewiseCurve.
[market] Change Actor const-ness.
[optimize] Expose vector projection.

I'm not sure this is necessary.
[opt] Change termination conditions so monopoly is happy.

This is necessary because of the non-continuous nature of piecewise
supply curves.

- Error bounds on exit.
- Termination condition.
- Fixed number of iterations.
[cartel] Implement the Cartel class.

This class accepts multiple other actors as its constituents. It then
behaves as a single actor for all of these.

There is some magic here to preserve constraints. I found a solution
that works, but I need to think more about why it does.

The one part that is not implemented is the benefit-equalizing
algorithm, although if the constraint preservation works as well as it
appears to, this shouldn't be hard.
blah
[main] Include monopoly.
[opt] Add production to output.