I would say the best is Cyanogenmod, even in it's current state. There are a few bugs that are annoying but none that make it unusable. As far as the other roms go there arent really any big differences. Some may have different default stuff than others, but there is nothing that one has that you cant add on another. (Except V9/VC compatibility, this would something you could not change, but that falls more under requirements than pros and cons.)
So pretty much your choices are Cyanogen or the other ROMS(Sprint ROMs).
****************************
CyanogenMod 7
Pros:
-CM has an enormous dev community
-Gingerbread
-lots of customization and features not found in stock android
-much faster than Sprint ROMs
-no bloatware
Cons:
-beta
-as of right now to keep up-to-date have to flash and wipe a lot, but this is temporary
-bugs
****************************
Sprint ROMs
Pros:
-few bugs; very reliable
-some customization
-Jit and stagefright can be enabled
-overclocking
Cons:
-Sprint ROMs arent that much different than what came on the phone
****************************
To sum up this long post, once CM7 has a stable release there really should not be much of a question of which ROM to choose