Cent-accurate mortgage amortization for Python, validated against published CFPB and Fannie Mae examples