Refactor/enable linters
Created by: frosty-geek
Since the code has grown "organically" over the years, it's very hard to review changes or add to the code base.
This draft PR is intended to clean-up the code enough so that linters like 'bashate', 'cspell', 'language_server', 'shell', 'shellcheck' can actually assist to review changes.
ref: #118