echonest: remove confusing length output (#545)
Specify configuration behaviour with tests

Beets stores all its data in the `BEETSDIR` directory. The default is
determined by the system:

* `%APPDATA%\beets` on Windows. If the `APPDATA` environment variable is
  not set it falls back to `~\AppData\Roaming\beets`.
* `$XDG_CONFIG_DIR/beets` on UNIX. If the `XDG_CONFIG_DIR` environment
  variable is not set it falls back to `~/.config/beets`
* `~/Library/Application Support/beets` on OSX

The default can be overwritten using the `BEETSDIR` environment variable.

The user configuration is read from `$BEETSDIR/config.yaml`. Additional
configuration files that overwrite options from the user configuration may
be specified using the `--config` command line options.

All relative paths in any configuration are resolved relative to `BEETSDIR`.
Implement new configuration behaviour
Documentation for configuration location
Time zone fix for epoch time calculation for SQL based date queries (#542).
Time zone fix for SQL date clauses (#542).

Query using the SQL function datetime instead of date.
Python 2.6 compatibility for date queries.

The method datetime.timedelta.total_seconds() is only available since 2.7.
Query date intervals by their numeric epoch time.

SQLite store dates as epoch time offsets in UTC. By converting date
interval endpoints to UTC epoch time in Python, using the SQLite date
functions isn't necessary any more.
Merge branch 'datequery_timezone_fixes' of https://github.com/silb/beets into silb-datequery_timezone_fixes
Merge branch 'remove_cascading_config' of https://github.com/geigerzaehler/beets into geigerzaehler-remove_cascading_config
style tweaks in date queries (#551; fixes #542)

The microseconds were being ignored anyway due to the int conversion, so we
might as well not use them here.
Merge branch 'geigerzaehler-remove_cascading_config'
docstring/style fixups for #513
Unixy location is fallback on OS X

This is mainly for backwards compatibility. It's also an effort to reduce the
support burden; this way, I can say "your config directory is ~/.config/beets"
without needing to ascertain whether someone is on a Mac.
don't relativize command-line paths (#513)

Paths given on the command line (e.g., with the --library option) need to be
relative to the working directory, not the config file.
create BEETSDIR directory (#513)

The directory returned by config_dir() must exist. That was not being enforced
in the BEETSDIR case.
refine config location discussion (#513)
robust difference display for `modify`

This new alternative to _showdiff takes care of formatting and is better at
highlighting differences for non-string fields. This takes care of the issue
where "True -> False" would have everything but the "e" highlighted.
use _show_model_changes for `write` command
use _show_model_change in update