use readline for interactions