Refactored the way in which RandomSentryDetect... keeps track of sentries.

RandomSentryDetectionStrategy now keeps a list of integers that
represent the population indexes of the sentries. This means that
this strategy can now be applied to algorithms where entities don't
survive across iterations.

Signed-off-by: Gary Pamparà <gpampara@gmail.com>
Removed the "getID" dependancy from two classes.

ChargedVelocityProvider and FDRVelocityProvider would use entity
IDs to check if entities are the same. Now the entity objects
themselves are compared.

Signed-off-by: Gary Pamparà <gpampara@gmail.com>
Removed specialised entity identification stuff.

Since a new ID is created in all the constructors of AbstractEntity,
all entity objects will always have unique IDs. In fact, in the
equals method, the code would never reach the last lines where it
compares IDs. So we may as well indentify entities based on the
object itself.

Signed-off-by: Gary Pamparà <gpampara@gmail.com>