issue #43: refactoring
issue #43: changed licence to LGPL to reflect the related change in the rest of MedSavant code base
issue #43: code cleanup
issue #43: testsuite cleanup