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.
This looks good to me. Maybe I would just add a comment clarifying that we add the error to only the first record so we don't get the error message repeated multiple times in the UI, even though it might have been a different record that threw the error.