Allow (re)setting path in DirectoryListing

This will allow a DirectoryListing object to be reused to display
directories other than the original one (specified in the constructor).
Move selecting first item in DirectoryListing from TrayIcon to DirectoryListing

This is a better place for it.
Keep track of the root/home folder in TrayIcon

This will aid in reusing a DirectoryListing to display any directory.
Add stubs for two new preferences

The both revolve around the single-menu mode.
Move common add_image() case to BaseItem

It already appeared twice and was going to appear once more, so might as
well move it to the base class.
Make signal handling and callbacks more flexible in FileItem

Make on_button_release() virtual and add virtual on_left_click() method
in FileItem. This allows the signal connection and right/centre/left
click handling to be propagated to sub-classes.
Add preliminary SingleMenuDirectoryItem

Includes the basic functionality only for now (reusing the
DirectoryListing object). Other stuff still to be added.
Add preliminary UpDirItem

Just the basic functionality for now.
Use the new SingleMenuDirectoryItem
Add an UpDirItem to the menu when in single-menu mode

It's in the wrong place at the moment.
Add placeholder/reminder for reseting the root/home folder when popping up the menu

I'm not sure yet what the best behaviour will be; reset the current path
to home every time or leave it at the last used path. I'll try the
latter for a while.
Bold the UpDirItem so it's easier to read
Fix widget removal when a dir is deleted in single-menu mode
Pu the up-one-dir item in the right place
Show the right mime icons in SingleMenuDirectoryItems
Show the right mime icons in SingleMenuDirectoryItems
Add shortcut to home item
Add root dir option to preferences
Add ability to get a directory listing's current path
Add home shortcut button to menu if not at home folder when first popped up