Use install instead of installmissing if Chocolatey >= 0.9.8.24

X-ref: #13980

This also adds a chocolatey.chocolatey_version function and does some
DRY cleanup so that the error message and exception are raised in
_find_chocolatey() instead of in 6-8 different places.
Initial commit of boto_cloudwatch module and boto_cloudwatch_alarm state
Fix versionadded string
Giving the file.directory option the ability to ignore files or directories when recursively setting the ownership, group ownership and permissions.
Support static option in batch mode
Allow the inclusion of `exc_info` on a per handler basis.

This allows showing the `exc_info` if a specific log level or lower is
enabled, but, on a per logging handler basis.
For example, if the console hander is at info level and the file log
handler is on debug level and we pass `exc_info_on_loglevel` to a log
call, the traceback will be included in the log message of the file
handler but not on the log message of the console handler.

Closes #14870
Closes #14859
Use default formatter if none is defined
Test `exc_info` per handler
Fix lint issue since arguments differ on purpose
Remove trailing white-space
Use `exc_info_on_loglevel` instead of `exc_info`
Use `exc_info_on_loglevel` instead of `exc_info`
Use `exc_info_on_loglevel` instead of `exc_info`
Use `exc_info_on_loglevel` instead of `exc_info`
Use `exc_info_on_loglevel` instead of `exc_info`
Use `exc_info_on_loglevel` instead of `exc_info`
Use `exc_info_on_loglevel` instead of `exc_info`
Use `exc_info_on_loglevel` instead of `exc_info`
Use `exc_info_on_loglevel` instead of `exc_info`
Use `exc_info_on_loglevel` instead of `exc_info`