added null string check to isValidOTPFormat and return false instead of
causing a NPE. 

changed getPublicID to check null or too short strings and throw
IllegalArgumentException instead of a NPE or ArrayIndexOutOfBounds
exception. 

update javadocs for verify() and getPublicId to indicate
IllegalArgumentException is thrown in invalid input is given. 

Updated unit tests to verify good and error conditions of getPublicId.
Split unit tests for changes addressing issue #4.
Merge pull request #5 from mrmcd/master

Fix for issue #4 to throw IllegalArgumentException on bad data