Finished contact insert, needs testing
FIX: Forgot to nullcheck data
BUG FIXES Galore

Forgot to connect to DB before querying it
map was renamed dbMap in the table (Column doesn't exist error)
Updated USAGE message as it had old email archiver usage
Stripping PB answeredBy I needed to get the first part of string
Again stripping more, I needed to add one to the ) index because I was
just returning the same string each time.
update.execute() doesn't return a result set so is always false, fixed
by checking updateCount (e.g. rows updated)
Inserting a contact i should have started from 1 not 0
LIKE % needs to be done at the setString level not the SQL level

Discussion: Create three statements vs a statement for each field?
Moved logger setup to daughter class so we can specify different logs
Implement LOGGER in daughter class + Skeleton for inserting message
Added helper method to get record message
Implemented insertMessage

rowCount != -1 && rowCount > 0 same as rowCount > 0 (so simplified it)
Added some logger messages + bug fixes

Was trying to trim/substring/uppercase null values like a buffoon
Preview should have been 50 chars not 150
FIX: Forgot to change email LIKE to add the % at setString time
Added current id to added logger count