Use RHASH_IFNONE instead of RHASH internals directly. Rubinius compatibility

Rubinius doesn't allow RHASH internals direct access.

Do it using a macro.