what does npm do besides get the source files for the project?