Module method update

I have updated how modules work, see the wiki for more information