update with newly learnt understanding of how npm works