ViperThread

consolidate camthread and track interface into single class