Sorting only matters inside of list_items()
Retain order of command line arguments in filter_ids()

- Keep the order of filters.
- But if a filter matches multiple items, sort them!

If I do a "gitodo e :/foo :/bar", I first want to edit all items
matching "foo", then edit those matching "bar". If "foo" or "bar"
matches multiple items, I want to edit them in their natural order,
though, so we need to sort them.
Add $GITODO_EDITOR which has priority over $EDITOR
Add $GITODO_EDIT_SINGLE
Make --new-from-files work with relative path names