split out core functionality

refs https://github.com/steveoh/grunt-esri-slurp/issues/29