bug fix: return validation message, not throw
add null checks on params
update version
first stab at reworking unit tests; more work still needed