Why does "adb reboot" shut down my phone so much faster than usual before it reboots? Is it skipping important steps?
Based on the platform/system/core repository you linked above, I think the key is in libcutils/android_reboot.c. And important definitions are in include/cutils/android_reboot.h; namely:

    /* Commands */
    #define ANDROID_RB_RESTART  0xDEAD0001
    #define ANDROID_RB_POWEROFF 0xDEAD0002
    #define ANDROID_RB_RESTART2 0xDEAD0003


Usually in normal reboot mode (using device button, etc.), the process is longer because (I assume) it umount partition, kill all applications, close all fopen nodes, as in shutdown process. The adb reboot can be compared with Linux reboot command (from where it comes): it just flushes the disk and enter reboot without first killing processes or unmounting filesystems. I see also a fast remount command issued to put disk (in our case device's storage part of system) in ro mode before reboot.

I also believe the command issued is kernel_restart() which is embedded in kernel. See for example http://www.phonesdevelopers.com/1730094/. Also check machine_restart calls.