/// <summary>
        /// Actually reparent a single entity to this group.
        /// </summary>
        /// <param name='pEntity'>
        /// <see cref="Crystallography.AbstractCrystallonEntity"/>
        /// </param>
        public void Attach( AbstractCrystallonEntity pEntity )
        {
            IncreaseSlots( 1 );
            members[GetFreeSlot()] = pEntity;

            //create a child-node, give it a positional offset, make pEntity a child of child-node
            int index = GetOrientationIndex( pEntity );
            if ( _pucks[index] == null ) {
                AddPuck(index);
            }
            Node puck = _pucks[index];
            pEntity.attachTo(puck);
            pEntity.getNode().Position *= 0;
            if ( !AppMain.ORIENTATION_MATTERS ) {
                if ((pEntity is CubeCrystallonEntity) == false ) {
                    QualityManager.Instance.SetQuality( pEntity, "QOrientation", index );
                }
            }
            _numMembers++;
        }