With regards to your Q2, in quantum field theory there is a commonly used generalization of the Kirchhoff polynomial to 2-trees (2-component spanning forests). It's normally called the 2nd Symanzik polynomial, the first Symanzik polynomial being basically identical to the Kirchhoff polynomial. I'm not sure if it can generalize to k-spanning forests. To calculated the 2nd Symanzik polynomial you need to associate a variable with each vertex. (In QFT this is the incoming momentum at that vertex.) There's a nice recent review article which discusses some of this Feynman graph polynomials [(arXiv:1002.3458v3)](http://arxiv.org/abs/1002.3458v3) I also made a Mathematica demonstration that lets you draw graphs and calculates the polynomials. [Scalar Feynman Diagrams And Symanzik Polynomials](http://demonstrations.wolfram.com/ScalarFeynmanDiagramsAndSymanzikPolynomials/). The classic reference is N. Nakanishi, Graph Theory and Feynman Integrals, Newark, NJ: Gordon and Breach, 1971.