Merge razoredge's Work, add tests, license, and ipmievd support

This closes #6 and #5.

This will bring master up to speed with the devel branch, and passing tests.

If accepted, I'll continue work on this module based off of this new master, which will save a bunch of headache and merge conflicts.