Fixed a mistake in linalg.eig() documentation.
Avoid conversion to NumPy Scalar

After profiling I noticed that a bottleneck for NumPy scalar operations
occurs when trying to extract the underlying C value from a Python float
because it first converts the Python scalar into its matching NumPy
scalar (e.g. PyFloat -> float64) and then it extracts the C value from
the NumPy scalar.

For some types, it is a lot faster to just extract the value directly
from the Python scalar.

I only did for PyFloat in this modified code but the code is laid out
such that it can be easily extended to other types such as Integers. I
did not do them because I was unsure if there was a special scenario to
handle across OS and/or between 32 and 64 bit platforms. The ratio of
speed to do different operations are listed below (Old time / New time
with modifications). In other words, the bigger the number, the bigger
the speed up we get.

Tested in Python 2.6 Windows

RATIO  TEST
1.1  Array * Array
1.1  PyFloat * Array
1.1  Float64 * Array
1.0  PyFloat + Array
1.3  Float64 + Array
1.1  PyFloat * PyFloat
1.0  Float64 * Float64
4.0  PyFloat * Float64
2.9  PyFloat * vector1[1]
3.9  PyFloat + Float64
9.8  PyFloat < Float64
9.9  PyFloat < Float64
1.0  Create array from list
1.0  Assign PyFloat to all
1.0  Assign Float64 to all
4.2  Float64 * pyFloat * pyFloat * pyFloat * pyFloat
1.0  pyFloat * pyFloat * pyFloat * pyFloat * pyFloat
1.0  Float64 * Float64 * Float64 * Float64 * Float64
1.0  Float64 ** 2
1.0  pyFloat ** 2
Fix indentation
Added example for 2D-histogram with variable bin size.
Fixed two typos.
Got rid of a unit test

This test fails after updating numpy.i to deal with deprecated code.
My investigation into the source of the failure is that the test never
should have passed, so I commented it out.  I could be wrong.
Upgrade numpy.i

The numpy.i file is now compliant with version 1.7 deprecations, but
also works with previous versions of numpy.  I have tested back to
numpy 1.4.1.

Added 4D typemaps and memory-managed typemaps.  These were supplied by
Egor Zindy.

Fixed bugs in 3D typemaps.  I was referencing $3 when I should have
been referencing $4.  Thanks to Egor Zindy for catching this.
Removed doc from list of sub-directories

The doc directory has been moved elsewhere, so I removed the reference
to it in the Makefile.
Re-instated a Python 3 fix
Added Egor's ARGOUTVIEWM_ARRAY3 typemaps
Initialize all DATA_TYPE* data_temp variables to NULL
Updated the numpy.i documentation

The RST documentation file is now consistent with the C macros, C
functions, and list of typemap signatures of the latest numpy.i file.
Updated numpy.i testing documentation

Simple updates to include proper statistics on the number of typemap
signatures supported and the number of individual unit tests
implemented.
Minor adjustments to numpy.i

This includes so formatting adjustments, the removal of two unused
arguments for the make_fortran() function, fixing the number of
supported typemap signatures, including the ARGOUT_ARRAY4 typemap
signature in the comments section, and renumbering the typemap
signatures.
fixed the testResize1 test in testArray.py -- Changed order of the resize arguments in Array2.h and replaced len(XXXnumpyarray) with XXXnumpyarray.size
removed the note about testResize1 failing in testArray.py
MAINT: adept divisions for truedivide

Following deprecations would cause problems otherwise.
API: Deprecating the use of non-integers for indices arguments

This changes the conversion utils to give deprecations for a all
non-integers (this currently includes python bools). The biggest
change is PyArray_PyIntAsIntp in which the deprecation is done.
Some other conversions are then also pointed to it.

Uses the Index machinery even for numpy types, which is faster
then the current code.
API: Deprecate __index__ for ndim > 0

For example NumPy indexing treats np.ones(()) very differently from
np.ones((1,)). It seems a bad idea to allow __index__ for arrays that
are not 0-d, as they cannot always be safely interpreted as integers.
MAINT: Remove non-integer deprecations which are now in PyIntAsIntp

Also removed old (commented) macro, the use of PyNumber_Index is
now actually implemented in PyIntAsIntp and not necessary here.

Removes PyIndex_Check compatibility macros, since we do not support
python < 2.5 anymore.

Change integer conversion error to IndexError, previously these
fell through and eventually became an IndexError.