Init.d Script: Add better support for inproper init.d (Safe-mode)
Inproper init.d means that the scripts are executed from an service within init.rc. A better way is using 'exec' from 'onboot' which will allow all the scripts to finish before the main and core services are started.

The issues in this case is that newer phones is to fast to boot into the UI. The script has no chance of finishing everything before then, especially not if a great deal of content needs to be moved. This means that content is being moved away from /data into /sd-ext while the UI is started, and content already placed on sd-ext will not be registered by the package manager because sd-ext has not yet been linked to data.

This fix will make safe-mode more stable on devices which boots fast into the UI. The content might still be moved while the UI is started, however temp symlinks will make sure that the system always has access to the real APK's no mater where they are placed, until the script get's far anough to link the folders