fix: calling run() directly instead of via schedule() to fix concurrency issues; also, retrying after 10s if connection fails
This is a proposed solution to Issue #65 (closed). run() is called directly in the for IdleForever { ... } loop in main.go. Scheduling of individual mailbox fetches is not necessary anymore for two reasons:
- The per-account locks introduced in 4d172b84 take care of the scheduling implicitly.
- The problem of the whole program crashing when a connection fails (i.e. the reason for using a separate thread for each mailbox) can be solved by letting the thread with the failing connection wait and retry after, say, 10 seconds.