path.join avoids hardcoding platform dir separator