ENH: Add ISO3 ctry codes and error arg. Fix tests, warn/exception logic #8482

This PR adds ISO 3-digit country codes, support for World Bank Country Code exceptions, by changing the error handling and warning logic and introducing an ```error``` argument which toggles between ignore/warn/raise . Validation no longer filters bad country codes, prior to submitting the API request.  Instead, it attempts to catch errors in the WB response - which is a very hairy thing.  See notes added in remote_data.tst for issues.

During this PR, we attempted to clean up the JSON response, and make the module as simple as possible, without restricting the user.  In the end, it proved somewhat awkward, but the solution is a good one given the constraints of the WB API.

closes #8482 .

Updated right before merging to remove noise, and provide a summary.
point to the ``remote_data.wb`` here instead. You just want to have a ref to the docs (and put it at the end of this line). Basically the purpose of this is to say we had a change, here's the reference issue (and add that here as well), and here are the docs. All the info a user reading the whatsnew needs. Not too specific, but enough that they can click to get what they want.