Refactor graph
Small refactoring to ease maintenance of the script :
- Add a helper file as a header that includes all function definitions
- Separate the different phases of the script into functions
- Pass through ShellCheck to try to make the code more error-proof (it was mostly just double-quoting all variables that could contain spaces for some weird reason)
- Add comments before each function to explicit its role (where I understood what it does)
- Got an accidental linter pass in the middle (so tabs are spaces now, I'll change that I promise)
This was the first step I needed to do before I could start working on it, most notably to add nested inclusions support since I tend to use them in my scripts