We definitely intend to support unscoped and non-atomic plans in 2.0. Plans will also be able to contain WAR files. So options 1 and 2 are simply not available right now.
Option 3 should work however. The kernel maintains a recovery log of the items deployed in the hot deploy directory and will redeploy them in the same order on restart. Clearly option 3 needs a bit of careful handling because if you drop files into the pickup directory in very quick successision, the kernel may "spot" them in the "wrong" order.
The robust way to solve this problem is to use Spring DM and then the service damping will cope with bundles being started in the "wrong" order.
You then have to consider bundle resolution because of package dependencies. One way to approach this is to put the service bundles upon which there are package dependencies from the WAR or other service bundles in a repository, e.g. in the repository/bundles/usr directory. Then when the WAR file is deployed, the bundles it needs to be wired to will automatically be installed and started.
With a bit of luck, you may be able to get to the point where all the service bundles go in a repository and deploying the WAR file is sufficient to drag them all in. I guess this would only not be the case if you had separated interface from implementation and had service bundles upon which there was no package dependency. You'd have to deploy these also.
I hope that helps. It doesn't sound like you're very far from a solution that will work with M2.
Glyn Normington
SpringSource