Be compatible with py3k with the help of 2to3 #13 #16 #17

Updated build script.
Clean up old test files.

Rewrite test cases.

Fixed bugs found in testing.

Fixed bugs found in testing.

Remove makefile.

Change installer's python finding order.

Revert commands module loader to be condensed.

Extract python version selection to util.py

Revert setup.py to distutils.

Fixed wrong about PY3K.