All predicate? methods should return false or true

Adjust all tests to ensure `predicate?`-type methods return true or false, as opposed to truthy or falsey.
This prevents callers from surprises when the return values are used in places where the difference betwee `nil` and `false` matters, e.g.:

irb(main):001:0> case nil
irb(main):002:1> when true
irb(main):003:1> puts 'true'
irb(main):004:1> when false
irb(main):005:1> puts 'false'
irb(main):006:1> end
=> nil

irb(main):007:0> nil.to_s ? true:false
=> true

This also better matches the method contract that says they all return a boolean.

This is the first part of https://github.com/sethvargo/chef-sugar/issues/61, fixing the tests so we can go back and fix any incorrect return values.
Return true or false, not truthy and falsey

https://github.com/sethvargo/chef-sugar/issues/61
Cleanup boolean logic in Shell