But still, even if upstream disagrees, I think it is the responsibility of the packagers not to break ABI compatibility in this way (just as they wouldn't ship OpenSSL 1.0 as libopenssl0.9.8.so). I'm pretty sure every script that uses Python 3 uses python3 in the shebang.
There was a discussion on the arch-dev-public mailing list[2] recently that you might be interested in.
In any case, I think it's clearly beneficial for every new Python application to make their version requirements explicit in the hashbang.
[1] http://www.python.org/dev/peps/pep-0394/
[2] https://mailman.archlinux.org/pipermail/arch-dev-public/2012...
#!/usr/bin/env python
Edit: Hee hee
[aeikum@aeikum howdoi]$ howdoi use python2 on default python3
/usr/bin/env python2.7
#!/usr/bin/env python2