fix usage message; add no argument check; add program name to messages; check for already-shell-friendly-ness in strings too