Port npm lister to swh.lister.pattern.Lister API.
As before, the lister can be run in full or incremental mode.
When using incremental mode, only new and modified packages will
be returned since the last incremental listing process.
Otherwise, all packages will be listed in lexicographical order.
One major improvement to be noted, latest package update date
is now retrieved when available and sent to scheduler database.
I have successfully tested the two lister modes in docker environment,
all npm packages can be listed in a little more than one hour.
Subsequent execution of incremental listing is then much faster.