abstract out OS dependent file tracking structures

if we are going to rely on a dev value from stat, we need to realize
it's platform dependent and adjust accordingly