MAINT: more carefully preserve dtypes through fractional matrix powers when possible, with tests