Constraint Processing in Human Computer Interaction with an Emphasis on Intelligent CAD