[COOK-2903] - move java_home resources to their own recipe
[COOK-2897] - add recipe for managing IBM java
[COOK-2897] - need to source jdk.sh

In order for bats to run, it needs to source the jdk.sh, as it isn't a
new login shell.
[COOK-2905] - use platform_family everywhere

We had platform_family used in some places, but not others. This
commit makes its use ubiquitous. It also shores up some gaps related
to cross-platform test coverage (kitchen.yml, tests).

* Add Debian to kitchen.yml
* Require omnibus across all test boxes
* Update README for Chef required version
* Switch minitest tests to use shellout
* Make a helper module for minitest
* Don't use a case statement for windows, its install flavor is...
  windows, just include that.
* Use platform_family across openjdk recipe
[COOK-2897] - use a string comparison not a regex match
[COOK-2897] - the command fits on one line
[COOK-2920] - add chefspec

This commit adds ChefSpec support, in the "spec" directory.

The following recipes are covered:

* default
* openjdk
* set_java_home
* ibm

The following recipes are not covered 100% (as explained):

* oracle, oracle_i386 - checks that the set_env_home recipe is
  included, doesn't test the java_ark use
* windows - pending, testing windows_package is out of scope at this
  time.

The set_java_home recipe is updated to have a single line to make it
less awkward to test (whitespace matters).
[COOK-2904] - add helper for returning java path

Add a helper in libraries/ to determine the correct location for the
java installation so `update-alternatives` can detect the right place.

This doesn't use any shell globbing and instead uses the fact that the
path is "standardized" (see COOK-2904) across Debian and RHEL
platforms.
[COOK-2904] - refactor ruby_block "update-java-alternatives"

* Move openjdk packages to an attribute
* Use Opscode::OpenJDK class helper to get java location
* Replace the ruby_block with a bash command
* Update default spec to set the platform / version so helper library
  gets correct data
Incorporate feedback from @sethvargo
Merge pull request #57 from opscode-cookbooks/jtimberman/COOK-2902

Refactor java cookbook
release v1.11.0
use sha256 checksums not sha1
release v1.11.2
increment version for development
[COOK-2989] - bash resource uses wrong attribute

* the bash resource used `command` instead of `code` as the attribute
for the script to run.
* the default jvm path in the helper library was not set correctly,
which caused the tests to pass incorrectly
* we need to look for the *parent* of the java_home in the helper, so
add java_home_parent method
* it appears that despite previous investigation (COOK-2904), the
architecture is not actually appended to the openjdk directory in
ubuntu 10.04 and debian 6
* use a heredoc in the openjdk recipe for the code, and #gsub the
leading whitespace, then repeat that in the test.
Merge branch 'COOK-2989'
release v1.11.4
increment version for development
Update to baseboxes, suite recipes

Opscode has published "provisionerless" baseboxes for Vagrant. We
should use those along with `require_chef_omnibus` in the driver
config. For more information, see this bento ticket:

- http://tickets.opscode.com/browse/BENTO-35

We also need to update the suites to use the openjdk and oracle
recipes directly so that minitest-chef-handler actually runs the
tests.