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.
This error is coming when LibGit2Sharp attempts to peel the object (via `git_object_peel(...)`) to a commit. `git_object_peel` is returning different error codes.

I agree that LibGit2Sharp also has room to be more helpful. Currently, it is just saying that it could not find a commit for the given spec (which, is not wrong). It could be improved to be more specific and indicate that the given spec refers to an object of an invalid type.