clustObjectSeen() now checks using hasSharedVision(), since clustObjectSeen() is called before DROID::visible is set.
Also, remove the backup of this bug, in scrCBObjectSeen().
Fixes ticket:1855.
DROID_GROUP became class. grpJoin function was made a method of DROID_GROUP, DROID_GROUP::Add(DROID*psDroid) and every instance of grpJoin(DROID_GROUP*, DROID*) was replaced by DROID_GROUP*->Add(DROID). Code was tested both compile and run, and everything is working as supposed, including Initialization and ShutDown of a game.