Aspects of Combinatorics: A Wide-ranging Introduction