reintroduce pointer-chained units. work in progress, use atlas branch.