TST: better assertion messages on test failures (GH4397)
closes #4397

a start at least

@cpcloud 
cc @jtratner

good?
 what about a `name` attr check for indices?
 and maybe just pep8 this sucker while ur at it ...
 I think that's handled separately (needs check_names to be true), maybe after @jtratner PR we can turn it on in full
 oh ok
 oh i see it's there nvm
 peped
 nice llooks good glad to have some more info here!
 you are prob right....feel free to put this in....

my main reason for having this is the problem of

`assertion failed....left.dtype == right.dtype`...but have no idea what happened
