[ObjC] Condense logic for diagnosing unimplemented setter/getters into help method.

No functionality change.
[ObjC] Change default property synthesis logic to not completely skip DiagnoseUnimplementedProperties.

We're going to extend DiagnoseUnimplementedProperties shortly to look for more cases
that aren't handled by default property synthesis.
Remove 'followsSuper' argument from lookupPropertyAccessor.  Turns out I didn't need it.
[ObjC] add support for properties in attribute 'objc_protocol_requires_explicit_implementation'.