#15 Add allow_nil and allow_blank option