IBMlib: The Individual-based modelling library