don't need config it seems
added test. helps me test the module
honestly, there is so much is this commit, I just don't know what to say.
I think this module is ready for release, but I'll ask some people to look over it first