feat(shfmt): add automatic indentation detection (#481)
* feat(shfmt): automatically detect indentation
* fix(markdown-toc): improve correctness of indentation size calculation
* fix(djlint): improve correctness of indentation size calculation
* feat: add effective `shiftwidth` to `conform.Context`
this also refactors formatters that automatically set indentation level
to use the new shiftwidth context