Add Reference->all and modify Commit->create to take an optional argument

`Reference->all` returns an array of all references in the repository.  `Commit->create` now takes an optional parameter which specifies which reference to update, defaulting to `HEAD`. Fixes #18.