loop unrolling of one of the core numpy_iexpr loop

One of the critical loop of numpy_iexpr was not unrolled by GCC. In the
new (templated) form, it does, which leads to some performance
improvements.

On the numpy-benchmarks test suite, we never get a slowdown and sometime
get a 10% speedup compared to master.
Allow tuple-subscript for numpy_iexpr
Merge pull request #264 from serge-sans-paille/faster-numpy-iexpr

Force loop unrolling of one of the core numpy_iexpr loop
Remove rosetta random test
Remove empty If statement
Handle omp pragma when useless statement are removed
Fix constant folding

* Do not hide issue catching all exceptions
* Enable constant folding for numpy expressions
* Fix reshape signature
* Fix "make upper" attributs name
* restrict constant expression to really constant cases
Ensure all modules and function are imported in constant folding
Handle more python function in constant folding
Some variables in loop are lazy
Merge pull request #266 from serge-sans-paille/fix-numpy-iexpr

Allow tuple-subscript for numpy_iexpr
Merge pull request #235 from pbrunet/lazy_in_loop

Some variables in loop are lazy
Merge pull request #261 from pbrunet/cstfolding

Cstfolding
Distutils support for Pythran-compiled extension
Merge pull request #267 from serge-sans-paille/distutils-support

Distutils support for Pythran-compiled extension
Improve and extend numpy.sum, max, min and prod

* Fix the axis implementation that behaved badly when ndims > 2
* Avoid many temporary arrays
Support axis argument in numpy.mean
Improve numpy.repeat, reshape and resize

* support -1 in shape
* fix buggy repeat typing
Partial support of broadcasting when performing a  numpy_expr

Also support broadcasting when the number of dimension is the same but
the shape are different.
Support numpy.var