small performance tweak, added some doc strings.
adding option to edit surface