Carbon monoxide poisoning is prevented by the energy costs of conformational changes in gas-binding haemproteins