infer the options passed to with_each_shard

so you don't have to pass nil, nil just to pass an options hash

Change-Id: I969fcd4e01dc98da26fa3f5716c4dcf325ecdca8
Reviewed-on: https://gerrit.instructure.com/30688
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: James Williams  <jamesw@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
add exception handling option to Shard.with_each_shard

Change-Id: Ia0f231e39eb8d167b647eb74a2761fc43c44bcae
Reviewed-on: https://gerrit.instructure.com/30689
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: James Williams  <jamesw@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>