must take baby steps...
eliminate None when unioned with non-None types
put fields of Def into Binding
replace all references to Def with Binding