Custom user-agent string & bugfix empty baseurl

The first part of this PR adds a custom user-agent string. The setting for this is added to a new preferences tab. The UA defaults to the original, which is still dynamically created.

![screenshot from 2013-12-27 17 35 43](https://f.cloud.github.com/assets/4979708/1815688/8315620e-6f20-11e3-9188-5a7ad92f8076.png)

The second part of this PR fixes a bug. The UI in my instance kept on crashing when updating all feeds. Debugging led to this:
DB     : loading item 0
DB     : Could not load item with id 0!
DB     : loading item 0
DB     : Could not load item with id 0!
HTML   : writing 973 bytes to HTML view
Segmentation fault (core dumped)

I managed to work around the issue by adding a feed before the first folder, like this:
![screenshot from 2013-12-28 12 46 37](https://f.cloud.github.com/assets/4979708/1817717/4f8873a2-6fbd-11e3-8818-474789cf9d94.png)

The combination of (admittedly excessive) nested folders and an empty baseurl passed on by calling liferea_htmlview_write created the segmentation fault. The commit is a simple NULL test.

The user-agent commit is ready to go. The bugfix empty baseurl is tested, but I would like to see someone reproduce this issue.