commands: Added File interface and implementations
commands: Added MultiFileReader (read a File as multipart data)
commands: Added Request#Files()
commands/http: Use constants for header names
commands/http: Parse multipart files into req.Files()
commands/http: Send req.Files() as multipart
commands/cli: Open file paths when parsing and use in request.Files()
core/commands2: Fixed 'block' command for req.Files() API
commands: Don't error on file arg checking (for now)
core/commands2: Updated 'add' command for request file API
commands: Added SetArguments/SetFiles to Request
commands: Added Recursive modifier to Argument
commands: Added global -r/--recursive flag
commands/cli: Support directory argfile arguments in Parse
commands/http: Support recursive multipart in MultiFileReader
core/commands2: Updated 'add' command for new file API
commands: Fail earlier for arg count checking (by doing it in CLI req parser)
commands: Changed Request#Arguments to a []string
core/commands2: Fixed commands to use string arguments
commands: Cleanup up argument validation