Update module

Lots of changes to make this module easier to use.