Speed up array.flat() for C-contiguous arrays
Merge branch 'ndadapt_refactor' into flat_speedup

Conflicts:
	numba/_helperlib.c
	numba/targets/arrayobj.py
	numba/tests/test_numpyadapt.py
Refactor a bit
Optimize flat() implementation for non-contiguous arrays.
Speed up C-contiguous flat() by 15% more by keeping track of the current pointer
(speedup should be larger on arrays with non-trivial item sizes)
Merge branch 'master' of github.com:numba/numba into flat_speedup
Remove spurious if-else
Use itemsize rather than strides[-1] when iterating over a C-contiguous array (it's more correct)
Merge branch 'master' of github.com:numba/numba into flat_speedup

Conflicts:
	numba/_helperlib.c
	numba/targets/arrayobj.py
	numba/tests/test_numpyadapt.py
Merge pull request #817 from pitrou/flat_speedup

Speed up ndarray.flat()