A computational analysis of the interaction between flavin and thiol(ate) groups. Implications for flavoenzyme catalysis