Configargparse

You can now pass PydPiper arguments in a config file; see the updated `README`, supplied files for the MICe farms and SciNet in `config/`, and ConfigArgParse documentation for details.  Various hard-coded details have been moved from the code into these config files.

Since the number of flags we might pass to the executors has grown, we currently send them a complete `argv` and `env` rather than looking through `argv` for relevant flags; they ignore unnecessary ones.  Ideally we could send only things their parsers understand, but it's hard to get at this information.  As noted in some code comments, the ideal thing would be to put details of all flags into an iterable data structure which we could pass to both the parser constructor and flag-pruning logic.

Since remote executors and servers receive queue flags, a `--local` flag was added so that processes can identify their role (in general, having information on their queue environment may be useful).  It's currently only used in submit scripts and users should never have to use it explicitly.

A few details of SciNet lifetime calculations are fixed; there is a bit more to do, but this belongs on another branch.