Add type checking for module arguments, converting as much as possible

Converts to list from comma-separated strings, and to dicts from
comma-separated, key=value strings.

Fixes #2126.
Use argument type checking to convert to boolean
Remove choices=BOOLEANS as it is no longer needed
Merge pull request #2187 from dhozac/argument-type-check

Add type checking for module arguments, converting as much as possible