A native implementation of PSR-0 using only the autoloader from the PSR-0 example in the spec would expect a folder structure like this:
League\Oauth2\Client\Foo = myapp/somefolder/League/Oauth2/Client/Foo.php
League\Oauth2\Server\Bar = myapp/somefolder/League/Oauth2/Server/Bar.php
If I was making these as packages, I could make them into two packages, which would be installed in different locations, because thats how Composer rolls:
League\Oauth2\Client\Foo = myapp/vendor/league/oauth2/src/League/Oauth2/Client/Foo.php
League\Oauth2\Server\Bar = myapp/vendor/league/oauth2-server/src/League/Oauth2/Server/Bar.php
If it fails in the reference implementation, but works in another implementation, that implies that either there's a problem with the spec, or that the other (composer) implementation is not compliant.
And considering it's been proven over and over again that there are several logical (and functional) inconsistencies in the spec, why can't you admit to it and move on?
This is why we can't have nice things. Because those who are maintaining and evangelizing for adoption of a specification can't even understand the bad parts of it and what needs to be fixed. That's a failure right there.