some changes to the ways that errors are handled
npm