Support git tag calculation based on version specified in metadata

Also use dependencies' Berksfiles to determine dependency locations.
Use dependency Berksfiles optionally

(only if "use_dependency_berksfiles" is specified in Berksfile)
Fix resolver_spec after recursive Berksfile processing was added
Update version
Local changes to select the latest matching cookbook version
Remove commented-out code
Better debug output when auto-detecting cookbook tag

Also fix the output to show the actual tag being checked out, e.g.

Installing some_cookbook(1.2.3) from github: 'some_org/some_cookbook' with branch: 'duplicity_backup-1.2.3' over protocol: 'ssh'

Finally, logging exceptions in downloader.rb in debug mode.
Add a --use_dependency_berksfiles command-line option
Fix confusing branch/ref output
Remove 'metadata' source for dependency Berksfiles

Also get rid of @version_from_metadata: reuse the @constraint property
instead.
Do not show 'master' branch for cached cookbooks to avoid confusion
Merge pull request #2 from mbautin/2-0-stable_use_dep_berksfiles_and_versions_from_metadata

Use dependencies' Berksfiles and allow using versions from metadata to compute tags