While i agree with most of what you said, there's one thing that i think you should know about the multitasking bit.
The way that apple described it's multitasking capabilities in iPhone OS 4.0, seem to be identical in how android handles multitasking - eg your app can have a background worker, that does stuff in the background (media player, IMs, background task for periodically checking stuff), and then the user-visible multitasking of switching apps, where the app that was used gets its state saved, then the process gets killed. If that app is then resumed the code handles the reading of the state.
This behaviour has been there since Android 1.0 (@override onPause() and @override onResume())