Add #with_progress to Enumerable

Added `with_progress` to Enumerable for a slightly more intriguing API. This is cool with something like https://github.com/rails/rails/pull/13938 however, that does a MySQL `count()` which we're not really fans of. I want to play around with the `Sharding` module in Shopify to try and find a nice way to use this API with that.

@jstorimer @byroot @kristianpd