use async map/reduce to get N pages of results