Simulating ecological and evolutionary systems in c