improve argument parser for files