This module was originally written by Craig Courtney

Patches
Stefan Nagtegaal
pz
cscsteve
al.ex

Suggestions and Tips
Steven Wittens
Dries Buytaert
