re-organized and added helper functions.  main scraper functions returns a promise object that can be joined with others using $.when.apply(this, deferreds).