Fibronectin: a molecule with remarkable structural and functional diversity