Add Project.reference_for_path

It mirrors the functionality of the method with
the same name in CocoaPod's Pod::Project class
(which after this patch will override it). The
differences are 1) CocoaPod's implementation is
constant time but this is linear wrt the number
of objects, 2) CocoaPod's implementation does not
work when you load a previously existing file.
PBXNativeTarget.add_dependency support for subproject targets

Previously, the behavior was simply to silently create an invalid
Xcode project file that Xcode UI showed as if the dependency wasn't
added.
Update changelog