Added a few modules from a book by Marijn Haverbeke