I don't fully agree with the checkout one. We do speak of checking out a file and checking out a branch using the same word, and they are not the same thing.
checkout -b however makes no sense. It should be the default behavior of git branch. It was probably put under checkout because it made for more straightforward code.