Change the default homepage to include the protocol
Intelligently parse the project homepage because Ruby's URI sucks
Use the new APIs for uploading packages
Update tests for the new APIs
Ensure that software fetched via path_fetcher are cached correctly
Add tests and documentation for Digestable#digest_directory
Cleanup digestable comments
Cleanup NetFetcher logic and add better Windows support

Because the Omnibus cookbook sets up 7-zip on Windows, we defer to using Z-zip
to unzip those types of archives. If someone is downloading .7zs on a
non-Windows platform, we will use 7z, not 7z.exe to extract those.

"tar" is available on all platforms, so delegate to that binary for handling.
This commit also adds uncompresed tar to the list of supported formats.
Add back newline character [ci skip]
Automatically upload checksums if they are present on the Artifact object

It turns out that upload_with_checksum does not actually set the checksum, but
rather compares against the known package and raises an error if it does not
yet exist. API design is definitely not in JFrog's book of best practices.

This commit changes the way we deploy artifacts to be more magical.
add with_embedded_path helper

make it easier to get the embedded path correct on both windows
and unix.
move path_key to priv method
fix spec, add with_standard_compiler_flags
Merge pull request #178 from opscode/lcg/windows-embedded-path

Add logic for windows embedded path
Downgrade FPM to ~> 0.4

Newer versions of FPM have libffi bindings which break healthchecks
Merge pull request #198 from opscode/sethvargo/downgrade_fpm

Downgrade FPM to ~> 0.4
Add standard compiler flags and options for AIX
Don't send ldd/otool output to the same file.

This will allow multiple omnibus project builds to run concurrently
(with separate cache dirs).

* GC concern in the original comment is addressed in mixlib-shellout 1.4
* it should be fine holding entire shell output in memory as it's doing it already.
  currently, it redirect all output to disk and then read the entire file
  with a File.read call. so with the change, we actually save the trip to disk.
Always print backtraces
Only rescue Omnibus:Error in the CLI