Motorola's GB comes with a Task Manager. I hadn't used one in a while, but I do use that one. It gives you the option to kill certain apps and services when you turn off the screen, which I'm not sure if that is a unique to that task manager, but it works really well in practice.
My prior experience with task managers has been bad. Mostly because they use improper triggers for killing tasks, and they just F up the system. They should have done something simple, such as Motorola has done, whereby turning off the screen is the trigger for killing certain tasks.
Android's method of leaving apps in memory is an implementation for an ideal environment. In practice, it sucks. I'm not referring to apps you would legitimately leave in the background, such as the web browser, but rather apps which finish() and yet are still kept in memory due to the system. Due to bugs in the API: webview unkillable worker threads, webview refcount bugs, inner task reference bugs, asynctask threadpool lingering, listview recycler bugs, and in general poor app design regarding GC.. many apps will suck up a lot of usable memory for no purpose. For a heavy user, you'd be better off with apps going away between runs.