Algorithmic Combinatorics: Enumerative Combinatorics Special Functions and Computer Algebra