Check exist? rather than rescue exceptions
wip: first pass at fixing validation