Refactor RemoteCommand into a reusable template class

Signed-off-by: David Aguilar <davvid@gmail.com>
cmds: add commands for removing bookmarks and recent repositories

Signed-off-by: David Aguilar <davvid@gmail.com>
widgets: add a dedicated "recent repositories" widget

Closes #342

Suggested-by: Ｖ字龍(Vdragon) <Vdragon.Taiwan@gmail.com>
Signed-off-by: David Aguilar <davvid@gmail.com>