add the basic infrastructure for a full device topology. This will
allow for organizing all the devices into horizontal trees on the
timeline for easier viewing and to better illustrate the flow of
all the suspend/resume paths