Hey, Wybo.
>I'm more inclined to think that it is better to create something that is clean and intuitive, than trying to mirror even the bad naming choices in NetLogo.

I definitely agree with you here. In this case though, I think the Netlogo way of calling everything an agent makes a lot of sense. Links, patches, and turtles are all autonomous components with some kind of agency, so I think it's important conceptually to keep them under the same umbrella (even if they don't all inherit from the same class).

That said, ABM.Set seems like a perfectly fine name for a set of agents. It's even something the Netlogo crew is considering: https://github.com/NetLogo/NetLogo/issues/594 =P

But even if we make that change, we're still left with ABM.Agent as the name of a particular type of agent. It seems like it would suck having to explain this distinction to someone learning ABM for the first time. Stephen proposed ABM.Boid, which isn't bad. Any other candidates for a name to call an agent that is in charge of its own location in the world? Particle is also okay, but implies a sort of passivity to me. Maybe ABM.Node? Mover? Traveler? Nomad? Wanderer? Rover?