First feature-complete version

This is the first feature-complete version fixing all issues with the
first one. The checkbox got replaced by an image, which now is modified
using CSS, keeping it nicely in sync.
Some additional javascript is used to correctly handle the click event
without toggling unread state twice.