rather than synchronizing method calls, I opted to create all objects before hand to prevent issues adding and removing them