It's implemented by Intel and used in many mobiles. It has it's own _absurdly_ fast DHCP client. It manages many network interfaces flawlessly and it's really lightweight. Give it a try.
As for NetworkManager's wait online service, see what timeout has been set inside the unit file, and try lowering it. Though I suspect this might be yet another hack implemented as a synchronization point for network-dependent services to initialize properly, given just how finicky it is to define what a "network is up" state actually entails.
udev-settle seems to be a workaround LVM not being event driven enough http://freedesktop.org/wiki/Software/systemd/Optimizations/
https://bbs.archlinux.org/viewtopic.php?id=189369
Using arch, systemd boot time is now almost inexistant (but I have a tiny system with a SSD).
6.340s systemd-udev-settle.service
6.232s NetworkManager-wait-online.service
Everything after that is under 250ms or so. Interesting that udev and network manager are taking so long during boot.