This module was originally written by Craig Courtney

Patches
Stefan Nagtegaal
pz
drewish
vhmauery
robb
jrt
alinraz

Suggestions and Tips
Steven Wittens
Dries Buytaert
