don't save maximized window position to config

it seems a 'configure-event' is sent before each 'window-state-event'
when the window is maximized, so the code is checking the stale value of
cfg.maximized, and saves the new position when it shouldn't.

it may be this only happens on win32, but the new code should work
correctly everywhere.
restored window position slightly off every time

default GTK 'gravity' setting seems slightly buggy on win32, and
'static' gravity avoids the problem. this should also work well
(better?) on other platforms, but it's untested, so..
Merge pull request #106 from zombie/window-positioning

fix two small window positioning bugs
fix double episode download bug

steps to reproduce:
0) have update setting on "download immediately"
1) when a new episode starts downloading
2) pause and then resume the download
3) manually update the podcast

result: a duplicate download task gets added/queued, can lead to corrupt
downloads.

there are other circumstances that can trigger the bug, but this one is
simplest/most reliable to reproduce.

while i can't claim to understand all of the download-handling code,
this seems (more) correct, and fixes the problem.

note: if the code looks confusing, the git diff patch just came out
weird -- compare the "before" and "after" files manually..
Merge pull request #107 from zombie/downloads

fix some download-related bugs
iPod sync alpha release
check if mygpo is enabled before calling .flush()

to avert a warning..
Merge pull request #109 from zombie/flush-warn

check if mygpo is enabled before calling .flush()
Merge pull request #108 from jnwickremasinghe/ipod-sync-oct-09

iPod sync alpha release - updated
regexp fails if url_encoded_fmt_stream_map is first argument
Merge pull request #110 from pieska/youtube-findurls

regexp fails if url_encoded_fmt_stream_map is first argument
fix regexp tp prevent failure if map is at the very end
Merge pull request #111 from pieska/youtube-findurls

fix regexp tp prevent failure if map is at the very end
Add manpage for gpodder-migrate2tres
gpodder.util: Fix FreeBSD network detection (bug 1730)

The unix_get_active_interfaces() function only partially works on
FreeBSD. Wireless interfaces do not have a status of "active", but
rather "associated".
Gtk UI: Update shownotes behavior

The 'Episode details', or shownotes, could be displayed but not
hidden. Further, the menu item and the context sensitive menu gave
inconsistent behavior when multiple episodes were selected. And
I've removed the 'Episode details' context sensitive menu from the
'Progress' notebook page since this displays the shownotes on the
hidden 'Podcasts' notebook page.
Gtk UI: Show duration column instead of size by default

Makes the "duration" episode column shown by default instead of the
"size" episode column.
Gtk UI: Move podcast list view options to preferences dialog

This change moves the "'All episodes' in podcast list" and
"Use sections for podcast list" from the view menu to the
preferences.
sync: Require eyed3 version 0.7 (Fixes #100)

eyed3 has updated their API with version 0.7. Use the
new API. The old API version of eyeD3 is not supported.
gpodder.model: Fix problems with migrated databases

I'm finally migrating from gpodder 2 to 3, and when starting up gpodder3
after running the migration, I ran into the following uncaught exception
(which aborted gpodder):

TypeError: coercing to Unicode: need string or buffer, NoneType found