Updating AssertEqualityComparer so that it can natively handle an IDictionary

I first thought I would make an Assert.Equal override for IDictionary, but then after reviewing the code it looked like the comparer might make more sense so that there is consistent behavior.