Add union? and intersection? functions
Add nil to constraint walk protocol