Python 3 compatibility in some tests
Fixes for switch PyInt_FromString/PyLong_FromString usage in Python 2 and 3
Fix for test in Python 2.x
Fixed doctest with L in the numbers or print statements
Removed miniutils min an max functions and replaced with builtins

miniutils.min and miniutils.max usage was broken as they tried to compare
uncomparable types. In addition, min and max support a key argument in Py2.6+.

90 Tests in total. (Skip: 1. Theano not installed)
Python 2.7:  7/90 FAILED
Python 3.2: 18/90 FAILED
Changes in the tests to support Python 3

In addition to the string formatting of integers and Long,
in Python 3 the floor division of complex is not defined.
PyNumber_Divide does not exist in Python 3.x
Handle ast differences in Python 2.X and 3.x for arguments

90 Tests in total. (Skip: 1. Theano not installed)
Python 2.7:  6/90 FAILED
Python 3.2: 14/90 FAILED
Fix differences with the ast
Fixed tests to be Python 3.x compatible
Changed again the way LLVM module is identified for _LLVMModuleUtils.__string_constants

Originally, string constants were identified by the tuple (module, const_str)
But in Python 3, LLVMModule is not hashable and therefore cannot be used as
a dictionary key. The first try was using (module.id, const_str), but this
fails in certain test cases. This patch uses (id(module), const_str), which
is suboptimal as id() is not a real hash. In the long run, it will be nice
to have implement __hash__ in LLVMModule.

90 Tests in total. (Skip: 1. Theano not installed)
Python 2.7:  1/90 FAILED
Python 3.2:  9/90 FAILED