core: add chdir() wrapper

Signed-off-by: David Aguilar <davvid@gmail.com>
git: return worktree in set_worktree()

Signed-off-by: David Aguilar <davvid@gmail.com>
main: add ability to quickly switch to another repository

The "Open" and "Open Recent" actions now switch the current GUI to that
repository in-place.  Additional menu entries were added to allow
opening repositories in a new window.

Signed-off-by: David Aguilar <davvid@gmail.com>
main: simplify the diff options widgets

The original widget was a big button in the diff header area.  Make this
button more minimal so that it sits in right next to the other buttons.

Signed-off-by: David Aguilar <davvid@gmail.com>
widgets.recent: trivial cleanup

Signed-off-by: David Aguilar <davvid@gmail.com>
main: add a "Bookmarks" widget for quickly switching repositories

Add a dedicated widget to make it really easy to switch between
repositories.

Signed-off-by: David Aguilar <davvid@gmail.com>