Refactor subcommands to use Effect for error handling and asynchronous operations
- Updated `restart.ts` to utilize Effect for managing virtual machine state and process control, improving error handling with tagged errors.
- Refactored `rm.ts` to implement Effect for finding and removing virtual machines, enhancing error management.
- Modified `start.ts` to leverage Effect for starting virtual machines, including support for detached and interactive modes, with improved error handling.
- Enhanced `stop.ts` to use Effect for stopping virtual machines, incorporating detailed error handling for various failure scenarios.
- Refactored utility functions in `utils.ts` to utilize Effect for asynchronous operations and error handling, including disk image management and command execution.