* Order the received queryset if it doesn't have ordering.
* Do not order UserStory model by "ref" because the query:
`queryset.filter(Q(project__gt=1) | Q(order__gt=2) | Q(ref__gt=26))`
give the wrong result. We need to use the query:
`queryset.filter(Q(project__gt=1) | Q(order__gt=2))`
because in SQL there's no short-circuiting.
The response for an UserStory/Issue now contains:
{
...
"neighbors": {
"previous": {
"id": ...,
"ref": ...,
"subject": ...
},
"next": {
... same as above
}
}
}
If there's a neighbor missing the response will contain the empty dict {}:
{
...
"neighbors": {
"previous": {},
...
}
}
Neighbors are looked up applying the same filters defined in the
corresponding ViewSets and the same ordering defined in those filters or
ultimately, in the model's meta. In other words, using the same params
you use to filter the object list, can be used to filter the neighbors
when fetching the object's details.