improve check to see if file exists; no more throw/catch