Add null implementation class for dry-run operations
Extract sudo execution handler
Extract file transfer handler
Introduce extensible design