Linear-time algorithms for independent trees and directed s-t numberings of directed graphs