Gate fidelity and state recomputation for Schroedinger solver
Changelog:
- In the Schroedinger solver, recompute the primal state during adjoint back propagation rather than taking it from storage.
- In the Schroedinger solver, the reported fidelity is the gate fidelity, rather than the sum of trace overlaps of individual states. The gate fidelity takes relative phases into account, since the absolute value is only computed after the sum over initial states.