Unhappy bug in template caused password reset to break.

This replaces the custom HTML we had with custom Python that'll always generate the right thing. Better.