BUG: sparse: fix bugs in dia_matrix.setdiag

- hide details of the internal dia_matrix data representation in
  setdiag(), so that behavior matches the other spmatrix types

- fix bugs in resizing self.data, which doesn't always have
  self.shape[1]==N

- add scalar broadcasting behavior to setdiag() for all matrix types
BUG: sparse/dsolve: detect invalid LAPACK parameters in superlu and bail out gracefully
BUG: stable evaluation of expit
TST: do not use yield test within TestCase subclass
TST: use assert_allclose with tiny abs tolerance for expit test
TST: more expit tests
TST: actually use the dtype
Merge pull request #3386 from argriffing/expit-evaluation

BUG: special: fix stable evaluation of expit
BUG: SuperLU: fix missing declaration of dlamch

SuperLU 4.3 called some functions returning floats without declaring
them. On i386@linux call convention, this fails to clear floating point
registers after call. As a result, NaN can appear in the next floating
point operation made.
BUG: sparse: downcast 64-bit indices safely to intp when required

Downcast 64-bit indices to 32-bit intp when required, but check
whether this is a safe operation, to be sure.

ufunc.reduceat and np.bincount deal only with intp data type.
BUG: nonlinear solvers are not confused by lucky guess
TST: sparse: silence some deprecationwarnings

The code triggers these only on Numpy < 1.9
Merge pull request #3388 from pv/superlu-bug

BUG: SuperLU: fix missing declaration of dlamch
Merge pull request #3389 from pv/sparse-downcast

BUG: sparse: downcast 64-bit indices safely to intp when required
TST: fix sparse test errors due to axis=-1,-2 usage in np.matrix.sum().

Negative axis arguments are not supported by numpy < 1.7.0.
Fixes part of gh-3330.
Merge pull request #3272 from pv/fix-setdiag

BUG: sparse: fix bugs in dia_matrix.setdiag
Merge pull request #3390 from argriffing/broyden-lucky-guess

BUG: nonlinear solvers are not confused by lucky guess
Merge pull request #3373 from pv/superlu-fix-lapack

BUG: sparse/dsolve: detect invalid LAPACK parameters in superlu and bail out gracefully
Merge pull request #3391 from rgommers/sparse-errors

TST: sparse: fix sparse test errors due to axis=-1,-2 usage in np.matrix.sum().
BUG: sparse/compressed: work around bug in np.unique in earlier numpy versions