add object core extension methods present? and blank?

This PR adds `blank?` and `present?` methods to `Object`.

The following values are considered to be blank:

- nil and false
- strings composed only of whitespace
- empty arrays and hashes
- any other object that responds to empty? and it is empty

Numbers, in particular 0 and 0.0 are not considered blank.