Sorting support in beets query mecanism (dbcore)

Add sorting support  (see #749)

 * in the dbcore API and as a new syntax for queries
 * default sort order can be defined in the configuration file
 * documentation and tests case are update accordingly

Plugin-defined Sort objects are not yet implemented but this could be done later (and everything is in place for that).
> It actually raises a more global problem imho with the methods that takes arguments that can be either string or objects (happens on several occasion with query and sort) : that requires some ugly isinstance tests but seems to but difficult to avoid witout breaking too many things.

I [agree](https://github.com/sampsyo/beets/pull/823#discussion_r14659908). I think we can postpone this and try to tackle it after a merge.