New checks, minor fixes

Added:
- Check.That(object).HasFieldsEqualToThose(...)
- Check.That(IDictionary).ContainsKey() and ContainsValue(...)
- Check.That(IEnumerable).IsEmptyOrNull()

Fixed: nice type name in reports
Spike: Negation generic test (raises false positive for now)