- Stages all new files and modifications in submodules and repo
- Asks for user input whether to push the new commits
- Pushes all commits in submodules and then pushes commits in main repo
- Checks if iTerm is currently running
- Attempts to launch iTerm
- If unsuccessful, kills all iTerm windows and attempts to launch iTerm again
