Changed deprection for lambdify matrices

This commit changes how lambdify behaves, mostly having to do with the
deprecation plan to change the default from Matrix -> numpy.matrix to
Matrix -> numpy.array.

- No longer have the `default_array` kwarg. Everything is solved by
  passing in a custom dict for the `modules` kwarg.

- Throw warning only if expr is a matrix, and the translation for
  `Matrix` hasn't been set at all by the user. If it has, no warning is
  thrown, as the translation is intensional.

- If the user passes in `modules` to lambdify, these only overwrite the
  defaults (meaning that the default modules are still included, but the
  user can override individual functions). This makes providing specific
  functions easier, as you can rely on lambdify to fall-back on the
  defaults if needed.