empty string and zero equivalents now being respected; switches -e and -z now functional