Remote property accessor on branch branch should not throw an exception

When a branch is under the refs/remotes/ namespace, but a specific remote cannot be resolved,
then the Remote property accessor should return null instead of throwing an exception.
I added a commit that tests this code path. Setting a tracked branch where the remote cannot be resolved (in this case the remote cannot be found) throws an exception.