BUGFIX: reduction that upcast the input on no axis (ex: sum on scalar).

It produce bad results as we don't upcast the inputs in the code, we just copy it.
Add many tests related to the reduction on 0 axis and upcast bug.
PyCObject instead of NpyCapsule for py3k compat.
Don't rely on includes to pull in npy_3kcompat.h.
Merge pull request #1414 from HapeMask/py3k-fixes

Use NpyCapsule instead of PyCObject for py3k compat.
fix tests/crash on python 3
Merge pull request #1415 from nouiz/py3

fix tests/crash on python 3
make some reduction test work with complex.
Merge pull request #1416 from nouiz/reduce_dtype_noaxis

[BUGFIX] Reduce dtype noaxis
Fixed #defines to work with npy_3kcompat and bytes.
npy_3kcompat redefines old PyString_X to use bytes, but this breaks
compatibility with python code expecting new strings. The solution is to
use PyUnicode wherever possible instead of PyBytes.
Fixed CURAND wrapper to work with capsules.
The capsule API destructor gets passed a pointer to the capsule, not the
underlying C object as in the old PyCObject API.
Fix Shape op C code for unknown types.
Merge pull request #1422 from HapeMask/py3k-fixes

Fix CURAND Wrapper in Python 3
Remove config from c key.

In particular remove nvcc.* stuff. We don't want the c_key of the config to change depending if theano.sandbox.cuda is imported or not.
Fix test in float32 and in FAST_COMPILE.
Added doc about hard_sigmoid and ultra_fast_sigmoid
Remove config from the key.
Merge pull request #1423 from nouiz/fixes

Fixes
Add on the web page the doc for images2neibs and neibs2images.
pep8