Strict call differently check_command and run_command

* Split `run_command` and add `check_command` on `Itamae::Backend`
* Use `check_command` inner `run_specinfra` with "check_" type
* Call `Itamae::Backend#check_command` from `Itamae::Resource::Base#check_command`
* Use `check_command` on some resources when non-destructive command

This is necessary. If all resources strict call differently `check_command` and `run_command`, Itamae *can retrieve destructive command list* in the future. Now some users use only `run_command`, but non-destructive commands treat as destructive commands is not danger.

(I think to implement new CLI option that outputs Dockerfile at a certain point of recipes, it's other issue)