added a combinations generator.  Tests pass.  Not sure if this is the nicest way to do it, but it's probably the way that will most easily generalise to graphs.
added firstkind check.  Not yet finished.