Fix problem with UMFPACK finalizers. 

This should hopefully fix the segfault in #9146. It does so on my machine, but I cannot say for sure why the old approach didn't work. The different finalizers appeared to be defined from the same symbol and hence our wrappers used the same finalizer for all value and index types. Using the different finalizers seemed to make a difference.

I have also added tests for all combinations of value and index types.

@tkelman Does this affect the test errors on Windows?