improve the first post about typed prop graphs; almost done