The basic idea is todo things the XP way and loads lotts of (cr)app(s) while the user is already seeing a GUI.
Paraphrasing Knuth, premature optimization is a bad investment. Before we start down this road, let's see some measurements showing exactly how much time each step in the boot process takes. We can then decide where to invest effort to improve with the limited development resources available.
Has anyone instrumented the boot process? For example, syslogging each initscript to get a timestamp would tell us how much time was spent in each one.