recoded text box validator. now checks for null strings, valid directories, and valid filenames