Nucleation: theory and applications to protein solutions and colloidal suspensions | Synapse