QML UI: Open show note links in browser (bug 1556)
Merge pull request #23 from corecode/master

QML UI: Open show note links in browser (bug 1556)
Basic Offline mode support (bug 107)

Detect network connections on Linux (still need to find a way to
implement it for Windows and OS X - on these platforms, this
implementation acts as if the connection is always available).

We might need to use this in more places in the code, but for starters
this should work nicely.

The Linux implementation assumes the "ip" command is available.
Download strategy: Only keep latest (bug 188)

Add per-podcast option to only keep the latest episode of a
channel (default strategy is still the current setting).
New extension: update_feeds_on_startup (bug 1656)

It's an gtk-only feature
Gtk UI: Don't auto-update when offline (bug 107)
Offline mode detection for OS X (bug 107)
Remove podcast_id accessor functions (bug 1696)
gpo: Align safe_print() with Python 3's print() (bug 1697)

On Python 3, we don't need to use safe_print() and all our
weird encoding tricks are obsolete then. As we still have to
support Python 2, the safe_print version won't go away yet.
Download: Rate-limiting for progress updates
Add extension to enqueue in media player (bug 1583)

At the moment this extension supports VLC and Amarok,
but it would be possible to add more media players
in the future.
YouTube: Gtk UI for video quality selection (pull request 19)

1) Redid the youtube video format list (added fallbacks for each quality
setting) and added a new config key youtube.preferred_format_ids, that
accepts a list of supported quality ids.

2) Added a GUI setting switcher that lets a user pick between predefined
video quality settings and respects the 'custom' setting.  'Custom'
should currently only be used if the user prefers 3D formats or 3GP.
All other variants are in the normal settings with sane fallbacks.

Existing users will not feel any change (current fmt=18 default is
respected). Only the default fallback for get_real_download_url() was
changed (to 720p), but that will never be called unless the user clears
her youtube.preferred_fmt_id variable.
YouTube: Cleanup the format selection patch
handle mygpoclient's MissingCredentials exception
Linux: Detect PPP as Internet connection (bug 1702)

PPP connections on Linux have state "UNKNOWN", and are
therefore not detected as such. We fix this now by assuming
that all "UNKNOWN" connections are actually working Internet
connections, and filter the loopback interface (which is also
an "UNKNOWN" connection).

Thanks to Sudaraka Wijesinghe for the bug report, initial
patch and testing/feedback.
Device sync: Per-podcast sync option (pull request 22)

Per-channel sync pause/disable, bump schema version for
new column.

Based on work by Rafi Rubin <rafi@seas.upenn.edu>
Gtk UI: Import titles from OPML / directory (bug 1711)

We now prefer titles from the podcast directory and OPML
files to the title in the feed. For URL-only adds, we still
use the title from the feed.
Remove old api.py module
Gtk UI: Integrate shownotes into main window

For now, this removes Flattr integration, but I'm sure
Bernd will fix this sooner or later.
Merge pull request #28 from brot/remove-api

Remove old api.py module