Refactor virtual machine commands to use Effect for better error handling and control flow
- Updated `restart.ts` to utilize Effect for managing the restart process of virtual machines, including improved error handling and logging.
- Refactored `rm.ts` to use Effect for removing virtual machines, enhancing error management.
- Enhanced `start.ts` to implement Effect for starting virtual machines, allowing for better control over detached and attached modes.
- Refactored `stop.ts` to leverage Effect for stopping virtual machines, improving error handling and logging.
- Updated `utils.ts` to introduce new error classes and refactor existing functions to use Effect for better error management and control flow.