Add autorequire for Package['git']

If the git package is being managed, it stands to reason that the git
package should be installed before trying to potentially manage git
repositories using vcsrepo resources.

This commit adds an autorequire to the vcsrepo type that reflects the
above premise.
Merge pull request #98 from reidmv/autorequire_git

Add autorequire for Package['git']
Prepare 0.2.0 release.
Merge pull request #102 from apenney/020-release

Prepare 0.2.0 release.
Don't 'su' if passed user is current user
origin/HEAD is not valid; use origin/master for latest when branch == 'master'
Using rev-parse to determine branch name of HEAD for on_branch? method
Merge pull request #106 from mikegerwitz/master

Correctly handle detached head for 'latest' on latest Git versions
Stripping git on_branch? return value; contains trailing newline

This commit also contains git provider `latest' method formatting changes;
squashed by request.
Merge pull request #109 from mikegerwitz/master

Bug fix: Git provider on_branch? retains trailing newline
Temporary workaround for broken Rubygems on Travis
Add the option to shallow clones with git

The new parameter used to indicate that you want a shallow clone is `:depth`
Merge pull request #114 from freyes/add-git-shallow-clone

Add the option to shallow clones with git
git: actually use the remote parameter

When using the following sample, the provider does not use the value of remote
when cloning a repository:

vcsrepo {'/path/to/repo':
   ensure => 'present',
   provider => 'git',
   remote => 'test',
   source => 'git@somerepo:repo.git',
}

$ git remote
origin

This commit makes sure that the new repository has a remote with the
supplied value.

Closes #MODULES-430
Merge pull request #115 from instruct-br/use_remote_name_when_cloning_a_repo

git: actually use the remote parameter
fix svnlook behavior with plain directories

svnlook expects a sub-directory within a repository called "format"; when using svnlook
within a non-repository directory this causes it to throw an error.  Adding a test for
that directory before executing svnlook.
Merge pull request #117 from jonoterc/fix_svnlook

fix svnlook behavior with plain directories
Merge pull request #105 from mcanevet/no_su

Don't 'su' if passed user is current user