slurpy: some introspection functions don't like getting KeyError instead of AttributeError
put arg-parsing mess into separate function
much smarter in-place editing: output to a temp copy and then rename/swap with backup after if needed
make verbose=1 the default, add -q option to suppress this
clarify option help strings