Merged the contents of semigroupoid-extras.