I see lots of warnings against using redsn0w on the 3G, as long as it hasn't been jailbroken with Spirit.

Is there a way around this? Is it possible to restore to a clean 3.1.3, then upgrade to iOS 4.0 and go through the redsn0w JB process, or any other JB method?