Fix custom coercion for support idempotent between `valid?`

Hi.

Please review?
thank you.

Closes #33 
Why `!nil_value?` and not `!blank_value?`?