This was a difficult problem to solve, because there are so many different possible solutions. So what's the answer?
Provide as many different customization options as possible so that it's easy for everyone to have the backgrounding style they want. Multifl0w used in conjunction with Backgrounder should be able to provide you with the options that suite your preferences. Using Multifl0w without Backgrounder on iOS4 will function like Apple's switcher, apps stay "open" in memory (although not actually running). Using Multifl0w without Backgrounder on 3.1.x is not advised, because apps will be closed as soon as they are exited. However, Multifl0w does not force Backgrounder to be installed on any OS version for maximum flexibility.