Event.chronological is back.  #2820.

This reverts commit 91778cf2730481f405732ab3315a4132c5317e83.

Event.chronological can be made to work by slipping in a
.readonly(false) in the relation.  A result set is readonly if any of
the involved relations are marked readonly, so this does not interfere
with queries that must return readonly result sets:

    # the first #joins makes this readonly
    Event.joins(:contact_links).chronological.all?(:readonly?) # => true

    # this still returns mutable records as you'd expect
    Event.chronological.any?(:readonly?) # => false

This commit also adds examples to demonstrate these properties.