Implement Branch.branch_name.
Implement Branch.remote_name.
Implement Branch.upstream getter and setter.

Thanks to @cholin for the help!
Implement Branch.upstream_name getter.
Merge pull request #221 from drodriguez/branches

added additional branch support

* Branch.upstream getter and setter
* Branch.upstream_name getter.