Add update functionality

This commit gives the ability to run with an update command which will
only update git repo's that do not have a SHA-1 hash as the ref.
minor refactor of update command

This represents a minor refactor of the update
command.

- only fetches the required branch
- still updates references
- keeps track of independent checkout command

This is a little hacky and necessary b/c it is
currently necessary to add origin to your
Puppetfile when specifying a branch.

It keeps track of the specified reference for use
for checkout, and also removes origin to serve as
the remote branch name.
Merge pull request #19 from bodepd/update_fix_up

Update fix up