Allow either view to be the lowest common ancestor

Apple's docs (http://goo.gl/5W0pwT) state: "The view that holds the
constraint must be an ancestor of the views the constraint involves,
often the closest common ancestor. (This is in the existing NSView API
sense of the word ancestor, where a view is an ancestor of itself.)"

Given this, the search for the LCA should start from self, not
self.superview.