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.
TST: Rework test_deprecations.py and add new tests.
STY: style and small doc fixes for integer deprecations
MAINT: Create new function PyArray_IntpFromIndexSequence

This function uses npy_intp to in principle support larger then
int sequence lengths.
DOC: Clarify and add C-compatible integer types to list of dtypes

Also mention np.intp, which at least personally I think is not an
unimportant type.
DOC: fix comments in min and ptp.
BUG: import longdouble instead of float128

i386 does not have 16 byte long double by default (only 12 byte/float96)
so the import prevents numpy startup.
Introduced in 1.8.0dev 40000f508
Merge pull request #3412 from juliantaylor/float128-i386

BUG: import longdouble instead of float128
A minor cleanup

- 4 indent instead of 2 for equation example
- Fixed Syntax::
MAINT: move vectorized sqrt to own static function
ENH: Vectorize float absolute operation with sse2

fabs on x86 can be implemented by masking out the sign bit.
Obtaining such a bit pattern is best done by a bitwise not on the
negative zero.
This is the same operation the compiler will convert fabs to on amd64.

Improves performance by ~1.7/3.5 for float/double for cached data
and ~1.4/1.1 for non-cached data.

If one simplifies the loops gcc could also autovectorize it but with all
hints its almost the same code length and slightly worse assembly.

The code can easily be extended to support AVX by changing vpre and
vtype to 256.
MAINT: fix shape mismatch issue in alignment data generator
MAINT: make the simd function signature more specific
MAINT: use @vpre@ for simd sqrt intrinsic prefix

allows simple extension to AVX
MAINT: remove duplicate vtype template
Merge pull request #3414 from joonro/patch-1

A minor cleanup
MAINT: move simd functions to new file simd.inc.src

SIMD functions are called via a minimal dispatcher function.
Minizes extra code in loops.c.src and hopefully transparently allows to
simply enable more complex (runtime) dispatching rules.