Moved from pyflakes and pep8 to flake8

Summary: flake8 has some desirable features like annotations to deactivate unneeded warnings.

Test Plan: check if linting still works (it does)

Reviewers: spang, emfree

Reviewed By: emfree

Differential Revision: https://review.inboxapp.com/D258
[DEPENDENCIES] Basic multicore support for SyncService.

We implement super ultra basic multicore support by splitting account
syncs across CPU by (account.id % 4), which does not take into account
system load in any way whatsoever. We can still shard across machines by
changing the recorded hostname.

gipc is required in order to prevent multiprocessing from duplicating
parent greenlets into child processes.

My goal here was to retain deployment+development simplicity, hence
choosing to use Python's multiprocessing library rather than a shell
script wrapper or CLI arguments + multiple supervised services. Despite
some (expected) hurdles, seems to be working out. I had to remove the
auto-reloader for mailsync though, it doesn't play nice with gipc.

In the meantime, we also removed SyncService's dependency on ZeroRPC,
and instead do all account actions by polling for changes to the
database. bin/inbox-sync now simply marks the database and returns
immediately instead of waiting on an RPC call. Nothing should be talking
directly to the mail sync process now.