These have to be functions sadly because `cd` doesn't work otherwise. This just means there is more reason to have subcommand aliases on a shell level. :) Heavily based on nerdypeppers stuff[https://peppe.rs/posts/curing_a_case_of_git-UX/].