refactor to allow hierarchy of track objects.  not yet finished.