MNT : make sure to cast to unicode
BUG : make rcParams.update validates inputs

Close #3470

Over-ride `update` so that inputs are validated.
MNT : simplify and relax validation on nseq

Simplify and relax the validation for sequences of floats and
ints.

 - unified logic
 - input is not restricted to coma-separated lists, list, and tuples.
   any length 2 sequence (like an array) will now work.
BUG : validate_stringlist should drop empty strings

This is a minor api change, but I can't think of why one
would want to carry around empty strings.
BUG : give animation args valid default values
TST : minor tweaks to animation smoketests
TST : added tests for some validation functions
BUG : validate input on the way into rcparams

Same as `update`, the default behavior of `dict.__init__` does
not call `__setitem__` so we have not been validating values passed
at creation time.

Update the tests to account for the validation.
TST : tests to make sure rcparams get validated

 - assert raise on invalid update
 - assert raise on invalid init
TST : skip the fail tests on 2.6
MNT : no deprecated rcparams in RcParamDefault

suppresses possibly scary warnings
TST : add cleanup decorators to some tests

Mostly paranoia
MNT : re-work obsolete_rcparams

re-use the existing frame work for this
TST : known fail more tests on 2.6
TST : special case pathexists for None

There seems to be a bit more magic involved in setting up
datapath
BUG : fixed string list default values

The other fixes on this branch make this un-needed (as the default
values of are now properly validated and a single word string (as
separated by commas) are correctly converted into length 1 list) but
out of principle make the default value of things labeled an 'string
lists' should have default values which are lists of strings.
ENH : change failed validations into warnings

Catch exceptions raised due to failed validations, force
setting the (un validated!) value, and print a warning.
TST : known-fail rcparam exceptions tests

Added known-fail to tests that expect rcparam __init__ and
update to raise exceptions on invalid input.
TST : added test that keymap values are all lists

Closes #497
Merge pull request #3564 from tacaswell/rcparam_validation_fix

Rcparam validation fix