Update paramfile custom argument to use events

Instead of introducing a new preprocessing method this uses existing events
and migrates code out of CLIArgument and into CLIDriver, which now fires and
handles that event instead of individual arguments. Due to this, all
arguments now support loading from a paramfile via URI.