Feature/1158 state country picklists

This pull request should not be accepted until @ceiroa has a chance to look at the "hack" to TDTM and error handling.  Carlos, look specifically at code that references to isPropogateErrorsFromTrigger.
Actually, I think we can use this "addErrorMessage" logic to associate the error with the specific record that caused it. We'd just need to wrap lines 120-121 with the condition that has been added in line 125. Then we can remove lines 124-129, and we don't need the code in TDTM_TriggerHandler that adds the error to the first record (lines 101-104).

I forgot I had done this, but this is actually what you were proposing regarding attaching the error with the record that caused it. :-) I had commented it out, because it was doing it every time, since I didn't have a "isPropogateErrorsFromTrigger" condition.