- the function in plugin was already configurable via flags, and only
contained two un-conditioned blocks that process_csv_file didn't have
- so I extracted the common parts into a separate function (in a class
holding the flags and state), process_csv_file calls it with default
flags, plugin sets them from params
- removed namespace ::detail, moving stuff that was used outside
csv_utils to ::csv_utils, and the rest to ::csv_utils::detail