Add doctests to integral_steps
Fix cache to work with unhashable items

The input is checked to see if it is hashable, and if it is not, it is not
cached.

We should verify that this doesn't have a major performance penalty, though I
doubt it will.
Make mutable matrices not hashable (issue 880)

I set __hash__ = None (indicating non-hashablity) on MatrixBase, meaning that
only ImmutableMatrix and ImmutableSparseMatrix should be hashable. I was not
sure if SparseMatrix was supposed to be immutable or not, but I think it is
not.
Removed unnecessary invocations of @doctest_depends_on()
Remove all `from __future__ import with_statement` lines
Use f(*args, kwarg=True) instead of f(*args, **{'kwarg':True})
core: Added (partial) support for count() and index() to Tuple
Replace all list(tuple).{index,count}() with tuple.{index,count}()
Formatting
Added circuitplot unittests
Merge pull request #1847 from mattpap/enhanced-asserts

runtests: Show operands of failed tests' assert statements
Merge branch 'master' into drop-python-2.5

Conflicts:
	bin/test
Fixed mechanics issues w/ immutable matrix

Pretty simple fixes, really just doing things the proper way now. However,
Vector and Dyadic both had their simplfiy method changed from being an in-place
modification to now returning the simplified Vector or Dyadic.
solvers: Split test_diophantine.py tests and mark one as @slow
solvers: Extract slow tests from test_quadratic_non_perfect_square
polys: implement modular GCD algorithm for univariate integer polynomials
polys: add tests for modgcd_univariate()
Merge pull request #2273 from mattpap/drop-python-2.5

Remove Python 2.5 stuff (#3930)
Don't use -qq with apt-get in .travis.yml

This should prevent timeouts from no output in 10 minutes.  Travis
automatically folds this output, so it's not a big deal.
polys: implement modular GCD algorithm for bivariate integer polynomials