Exercise 5.7 from The Linux Programming Interface by Michael Kerrisk. This exercise is to implement readv() and writev().