Correctly sort tagged version numbers

Removes the "v" char from tags before sorting.
Some repositories contain tags using both "1.0.0" and "v1.0.1" version formats. In those cases tags were incorrectly sorted.
Adds syntax highlighting to Puppetfile template.
Merge pull request #131 from patcon/131-syntax-highligh-template

Added syntax detection to Puppetfile template.
Fail if path is not a puppet module
Version of forge modules is ignored

Always installs the latest version
Use librarian gem

Move librarian changes to monkey patches so we can use their latest gem
(#115) Add license to gemspec
Merge pull request #147 from justenwalker/add-license

(#115) Add license to gemspec
Merge pull request #91 from maestrodev/librarian

Use librarian gem
test + refactor existing code
help users overcome rate limits
Merge pull request #143 from grosser/token-info

Improved output after hitting rate-limit.
Allow repositories to maintain modified dates on files when they are copied into the modules directory
Issue #146 Add features from maestrodev fork

Set as pending those that don't yet pass
Increase timeouts for travis
Enable features passing

Install a module with conflicts
Updating a module that is not in the Puppetfile
1.x versions should translate to ~>1.0 gem requirement

Add specs
Merge pull request #60 from maestrodev/forge-versioning

1.x versions should translate to ~>1.0 gem requirement
Cache forge responses and print an error if returns an invalid response
Use open-uri to simplify code and support proxies with http_proxy