Repository.CreateCommit: Allow empty refname for non-update commit

[The documentation](https://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_create) implies that `refname` _can_ be NULL if you don't want to automatically udpate a ref. This is useful if you want to create a new root commit (without any parents, think a `gh-pages` branch). 

This commit enables users to use the empty string for `refname` to signal a non-updating commit.