Basic category theory - Leinster, Tom 1971- (Cambridge studies in advanced mathematics, 2014)