Use last sync date to avoid downloading all issues

**This doesn't work** -- we end up marking all issues as cancelled. I'll have to think about how to deal with this.

refs #27
Sync all open issues, and only the closed ones modified since last sync.

This fixes the problem mentioned in 25f24a74f87588b0 while maintaining acceptable performance in common cases.

closes #27
Allow sync delegate to abort sync during initialization.
Improve documentation and code readability/usability across the app.

closes #32
closes #29