Rework copy read strategies

- make corrections to everything, including strategies algorithms;
- use strategies in object-oriented way;
- add skipfail and skipfail_noreverse strategies.