Add solution for exercise 18.
I am not 100% happy with it, since it uses a buffer of fixed size and
therefore does not **really** solve the exercise.