Revamped code based on contribution from enzipher #801360: Wait, that's my module!
Initial development release. Currently unstable/broken... Don't even think of using this in production.
Dev version for testing please report all bugs in issue queue for furthering the development of this module thanks -Coolestdude1