Role of domain swapping in the hetero-oligomeric cytochrome b6f lipoprotein complex.