Make the setup.py runnable by Python 3 and run 2to3 automatically.

Conflicts:
	sandbox/run_2to3.sh
	setup.py
setup.py: exit after it has called itself.
setup.py: Fix bug if setup is not in the current working directory.
Fix previous commit
setup.py: Hide 2to3's output.
setup.py: Add the --debug switch.
setup.py: In debug mode, display 2to3 logs.
2to3/run.py: Fix compatibility issue with old Python 3.x versions (2to3 does not suport -W and -o).
Fix previous commit.
Fix typo.
Speed up install on Python3 (2to3 is ran only on modified files).
setup.py: Remove error output if not in a git repo.
Google: Fix snarfer with Python 3.
core: Various Python 3 compatibility fixes.

Conflicts:
	src/httpserver.py
Dict: Use normal import (was broken in Python 3.3 for some reason).
Math: Fix load on Python 3.
Debug: Fix Python 3 compatibility.
Merge branch 'py3k-backport' into testing

Conflicts:
	setup.py