Mastering-Python-2e-exercises/CH_07_generators_and_coroutines

Chapter 7 - generators and coroutines
=======================================================================================================================

1. Create a generator similar to `itertools.islice()` that allows for a negative step so you can execute `some_list[20:10:-1]`.
2. Create a class that wraps a generator so it becomes sliceable by using `itertools.islice()` internally.
3. Write a generator for the Fibonacci numbers.
4. Write a generator that uses the sieve of Eratosthenes to generate prime numbers.