Use more display precision for Time and DateTime

The `eq` matcher often results in confusing output when comparing `Time`
and `DateTime` objects.

`Time#inspect` returns a value that is not full precision. This often
leads to a confusing failure message when two time objects differ by
fractional seconds. The matcher returns a failure but the diff shows
identical values. Microseconds have been added to the diff output for
`Time`.

By default `DateTime#inspect` outputs enough precision to prevent this
problem. `ActiveSupport` monkey patches `#inspect` to print a more human
readable but ambiguous representation. If `ActiveSupport` is defined a
custom format string is used for `DateTime` that has enough precision
to differentiate the two objects.

Fixes rspec/rspec-expectations#331
Merge pull request #416 from thomas-holmes/clarify-time-diffs

Use more display precision for Time and DateTime
Add Changelog for #416.
Cleanup change specs.

They were written to assume that the `===` check happens
before the `==` check for `to`/`from` values, but
in rspec/rspec-support#27 we are changing the order.

These tests were brittle and we don't still need them
as we have fuller, more realistic specs showing matchers
being passed to `from`/`to`.
Add `a_hash_including` alias.

The other aliases didn't really fit for a hash but a hash
is one of the main types of objects used with the `include`
matcher.
Merge pull request #421 from rspec/add-hash-including-alias

Add `a_hash_including` alias.
Improve `change` failure messages.

There were a couple of cases that produced puzzling failure messages:

k = "foo"
expect { }.to change { k }.to("foo")

..used to fail with:

  expected #some_value to have changed to "foo", but is now "foo"

..and now fails with:

  expected #some_value to have changed to "foo", but did not change

k = "foo"
expect { }.to change { k }.from("foo")

..used to fail with:

  expected result to have changed to BasicObject, but is now "foo"

..and now fails with:

  expected result to have changed from "foo", but did not change
Merge pull request #422 from rspec/fix-change-failure-message

Improve `change` failure messages.
cleanup
Move link to the right section of the README.

[ci skip]
Remove dynamic predicate matcher alias from the README.

We removed support for this so it's confusing for
it to be mentioned in the README.

[ci skip]