Hey Devin,
I can certainly understand why you'd want a feature like this. At one point, I thought it was a necessary feature. However, as James pointed out in the almond.js PR, it's problematic for the more advanced environments / loaders and it's a dangerous feature for end users.
Ember isn't the first framework / toolkit to want this feature. It took the dojo toolkit team over a year to finally figure out how to remove proprietary functions very similar to what you're suggesting out of their codebase. We, the cujoJS toolkit team, also struggled with it for a short time. However, we all (dojo and cujoJS) discovered that it was our mental model and code that were flawed, not the spec.
In summary, what you're asking for would be disastrous and cause more problems than it would fix since devs would start using it in *application code*.
Sorry if this wasn't the answer you were looking for, but I think the Ember team needs to take another look at its architecture if it wants to work with async modules. In a 100% async architecture, there is no need to synchronously check for a module.
Regards,
-- John