Endless forms most beautiful: how to program materials using geometry, topology and singularities - World Wide