I never understand this numbering that Nvidia uses.
Compared to Intel, AMD, and ATI, I think Nvidia have been remarkably consistent in labelling their product lines. Try tracing Intel's desktop CPU lines back to 2000.
The first digit represents a new generation of card?
Yeah, although some generations are more worthy of that label than others. The 9-series doesn't really deserve its name, the only reason to upgrade from an 88xx card is if you want to run a gaggle of 9800GX2s in 3-way SLI or something, and nobody needs to do that. The 9-series is priced appropriately enough though, Nvidia aren't gouging their consumers. Any more than usual that is.
But the second digit represents the performance?
Yeah, usually there are three basic divisions representing the low/mid/high-end and the letter suffixes represent a smaller degree of differentiation within those basic divisions. Also they can be used to indicate a minor "refresh" of the product line. That's what the 9800 series should've been really, the 8900 line.
So, a 8600 < 7800... and the 9600 < 8800... even though they're newer cards or whatever?
The high-end "last generation" part is generally faster than the mid-range "current generation" part, yes. How large that difference is usually determines how well that mid-range part is received. The 8600 couldn't begin to approach the 7800, so it's not rated terribly highly, whereas the 9600GT is right up there with 8800GT performance and is considered to be a good card. There are other advantages to going with a card from the latest generation, usually lower power consumption/heat output for a given level of performance, also better driver support and possible architectural improvements.