I did this twice in 2 weeks, so I've got a feel for what I like now and the least sucky way to do it. If I did it more often I'd probably write a script for it, but since I don't plan to do this for another 2 years here's a quick blog. Including sources so that if things change you can find them yourself and you don't have to trust this blog.
First install brew because having a *nix computer without up to date versions of things sucks. (source)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
Now install iTerm2 because even if you don't end up using it's features you might some day so you may as well use it instead of the default terminal. (source)
brew cask install iterm2
iTerm2 should be in your Applications folder, open it up as your new terminal.
Now install fish because it's the shell script that makes the most sense to me. It comes configured out of the box closer to what I want so I use it. (source)
brew install fish
Now add fish to your list of allowable shells and make fish your default shell.
echo "/usr/local/bin/fish" | sudo tee -a /etc/shells
chsh -s /usr/local/bin/fish
I don't know if I have enough of an opinion to care, but Oh My Fish and Fisher are both ways to get more out of fish. I installed Oh My Fish because it seemed to be the thing more people are using. Fisher is probably the correct tool for what I need, but whatever. (source)
curl -L https://get.oh-my.fish | fish
Now install bobthefish because it is a good theme that supports stuff like git out of the box. (source)
omf install bobthefish
That theme might throw some odd characters at us because it looks cool, so you need a font that will keep up. The font called Hack looks he most like I expect a font to look, so I use the version supplied via Nerd Fonts. (source)
brew tap homebrew/cask-fonts
brew cask install font-hack-nerd-font
Now you have to go into your iTerm preferences and select the new font.
As long as you are in the preferences menu you should find a color scheme that you like. I really couldn't find something I liked a lot but Smoooooth was the one I disliked the least so I went with it.