* Make shell_command async
Use `asyncio.subprocess` instead of `subprocess` to make the
`shell_command` component async.
Was able to migrate over existing component and tests without too many
drastic changes.
Retrieving stdout and stderr paves the way for possibly using these in
future feature enhancements.
* Remove trailing comma
* Fix lint errors
* Try to get rid of syntaxerror
* Ignore spurious pylint error
* Added template rendering to `shell_command` component
* Security upgrades to template rendering in shell_command.
* Added new unit tests for shell_command templates.
Better failure when template is invalid in shell_command