RecA mediated homology recognition offers lessons for sequence dependent protein recognition, protein folding, and artificial self-assembly