Sorting of documents within each "Sort by" group

Since enumerable list resulting from a `group_by` command is returned unsorted, the result will be documents inside each group ordered by database ID key. This is probably not what we want. 

This commit adds sorting by title within the groups. So we get a sort by selector works as follows:

**Sort by:**
* **Category** = Documents grouped and sorted by category and within each category the documents are sorted by title.
* **Date** = Documents grouped and sorted by date and within each date the documents are sorted by title.
* **Title** = Documents grouped and sorted by first letter in title and within each letter the documents are sorted by title.
* **Author** = Documents grouped and sorted by author and within each author the documents are sorted by title.
This would probably be a feasible solution. But if we want to add multilevel sorting in the future it will do us no good:
https://www.openproject.org/work_packages/10455