if you know the name of a gem, and you want to install it, what has to actually happen before you can `require` and start using the gem? a walk through how gems work, how gem servers work, and how rubygems organizes files on disk so that ruby can find and use them.