https://medium.com/@AlexanderObregon/solving-the-add-two-numbers-problem-on-leetcode-c-solutions-walkthrough-f9edd577ebdb