WithProgress: inlined resolve_enumerable; don't pre collect elements when object is not responding to length; if length is not defined use in order: size, length, count
silence warnings in spec
extracted eta and elapsed, stubbed them in specs