Make bundle run() and config() methods asynchronous. These methods may now return a promise.  The boot process will not continue until that promise is resolved.  This allows bundles to perform long-running operations during the boot phase.