Implement chapter 8 exercises
Merge branch 'feature/Chapter_8_exercises'