WIP: fast functions for N-dimensions

This is an initial demonstration of one of my proposals in #84.

To generate Cython code for some different number of dimensions, run, for
example:

	make pyx NDIM_MAX=4

So far, only move_max has been switched to use the N-dimensional code
generation. The generated Cython code for move_max.pyx with NDIM_MAX=3 is
entirely identical to the current version of bottleneck, except for the
removal or insertion of 12 blank files. I have not yet tested any of the
generated code.

I believe templates written in this model should be able to produce
N-dimensional Cython for almost all bottleneck functions. The only exception
that is immediately apparent is nanstd, which uses two separate loops in the
case of `axis=None`.
General template machinery to insert for statements
Add option to skip ndim=1 for axis is not None

With this change, the existing bottleneck test suite passes.
Switch all moving window functions to N-dimensions
All functions are now N-dimensional

With the exception of nn, which previously only worked for ndim=2.
Fix typo in template.py
Switch to use 'ndims' instead of 'skip_1d' in templates
Turn back on use of nogil when appropriate
Use nogil more aggressively (including all moving window functions)
Update README and RELEASE notes with NDIM_MAX

Also added an example to the "unindex_0dimensional" function in template.py.
DOC tweak readme
ENH update C files
Merge branch 'shoyer-move-ndim'