public void CanRetrieveIdOfChild ()
        {
            // given
            var obj = new KspObject ("OBJ")
                .AddChild (new KspCraftObject ())
                .AddChild (new KspPartObject ())
                .AddChild (new KspPartObject ())
                .AddChild (new KspPartObject ())
                .AddChild (new KspCraftObject ());

            // when / then
            Assert.That (obj.IdOfChild (obj.Children [0] as KspCraftObject), Is.EqualTo (0)); // Ids are per object-type
            Assert.That (obj.IdOfChild (obj.Children [4] as KspCraftObject), Is.EqualTo (1));

            Assert.That (obj.IdOfChild (obj.Children [1] as KspPartObject), Is.EqualTo (0));
            Assert.That (obj.IdOfChild (obj.Children [2] as KspPartObject), Is.EqualTo (1));
            Assert.That (obj.IdOfChild (obj.Children [3] as KspPartObject), Is.EqualTo (2));
        }