Fixed recurring "deleting tasks leaves time" bug

- Removed reliance on foreign keys. It doesn't work reliably.
- Fixed flaky test failure in some cases when you run the whole suite;
just set up the DB properly per-test run. Expensive, but reliable.
Update icon and redo minimize-to-tray.

These changes were lost.
The beginning of #12: DB PoC

- Basic converted Task with most fields
- DB access (and test: it doesn't get the ID)
- Infrastructure for in-memory testing (didn't work)