Correlated substitution analysis and the prediction of amino acid structural contacts