Analysis of the bimolecular reduction of ferricytochrome c by ferrocytochrome b5 through mutagenesis and molecular modelling.