Concerning Gamma, the main reason I haven't implemented it yet is that
it requires determining some magic constants that were only given to me
for a lower precision than what I need (10 digits instead of 16).
For the Gamma function the book
„Numerical Recipes: The art of Scientific Computing“ (3rd edition);
William H. Press, Saul A. Teukolsky, William T. Vetterling, Brian P. Flannery;
Cambridge University Press
might be of interest as it describes the implementation of a Gamma function with error smaller than < 1e-15.