CaseListMixin refactor

Addresses this ticket: http://manage.dimagi.com/default.asp?115291

I have moved the logic for the `CaseListMixin` out of the `ExpandedMobileWorkerFilter` and into the `CaseListMixin` as reconmended on [this ticket](http://manage.dimagi.com/default.asp?115291#BugEvent.735657) and in https://github.com/dimagi/commcare-hq/pull/4113#issuecomment-52794731.



I needed to allow the results to be sorted by multiple keys. I don't love the way I've implemented it here though. One limitation is that all your fields must be ordered in the same direction. Seems like there should be a more general way of specifying the sort.