Ambiguity fixing.

As I've always tried to explain, the main issue I saw is this one:

"The namespace prefix of a fully qualified class name MUST be mapped to a base directory"
- what if the autoloader triggers with a class name where we do not have any of the prefixes in our "map"? Something "MUST be mapped" or we fail to comply.
- what if the class name has more than one namespace prefix? do we have to "map" one of them or all of them?
- what if there are multiple matching files? do we have to include each of them?
- what does "mapped" mean anyway? where does the mapping come from? is it something we can reinvent for every class lookup, depending if the sun is shining or not? or is it thought to be something that persists between class lookups?

If you take it literally (which still leaves some room for interpretation) then you could come to a conclusion where the example implementation (and most implementations that people will come up with) fail to comply, because for some classes they do not "map" anything.

There are other issues, but I want to save you from a wall of text and focus on the most important.