@AndrewArdill: you may find this page useful: http://www.azimuthproject.org/azimuth/show/Applied%20Category%20Theory