(#14789) Fix inconsistent normalization and API in autoloader
Since I didn't get around to adding a require method to the autoloader, it
still makes sense to have the loaded? method exposed on instances. I also
added the changed? method, which would be useful in similar situations.
Testing these changes revealed inconsistency about how names are normalized,
which is also fixed in this commit.