control over prompting and echo-ing, use isatty(fileno(stdin))