Refactor to commands and tasks taking dependencies via constructor options. Paving the way for dependency injection.