Major STI refactoring

Use tar stream for sending scripts and source into containers instead of bind mounts.
Use tar stream for receiving saved artifacts from container.
Code reorg/cleanup.
We should match the mode bits from the header's FileInfo.