(#3136) - fix changes() when earlier winning seq

In the previous version of the changes() algorithm,
we were assuming that the winning seq was later than
all non-winning seqs, which isn't necessarily the case
when you've got conflicts. This fixes that.
in the case of `include_docs` and `style != 'all_docs'`, we need the winning doc. later on as an optimization, we can remove the extra lookup when `include_docs == false` and `style == 'all_docs'`, which interestingly is the version used during replication