Improve use of action abstraction in staging/up...

... simplifies code.
Refactor input type to directory mapping for reuse in client.
Remove unused imports.
More refactoring of input path calculation for reuse on client.
Allow file staging LWR server side.

Continuing on previous work on collapse setup/submission into one call, staging files can now occur as part of the submission process. Only certain staging actions can occur remotely - namely a new remote_copy action does a file system copy like "copy" but on the remote end.

If jobs_directory is defined in LWR client destination then all staging actions should be remotely executable and the submission process will be collapsed into one call.

This fixes the integration test previous added and implements some new backend details. A pseudo-action called MessageException for transmitting in memory files (such as rewritten config contents that never need to be written out client side). This simplifies action handling in TransferTracker.

Also some plumbing for serializing, deserializing, and actually executing remotely executable actions has been added.