Try to do without unnecessary dependencies

UMFPACK is by default dependent on CHOLMOD, but on some systems it is
compiled with -DNCHOLMOD; in those cases we should not try to link in
the library -- it may not be available and in any cases it is not used,
so it is just a superfluous dependency.
Include CMakePushCheckState on our own

Functions in this library was made available by other unrelated
modules, making this file unusable on its own.