Add item.try_write() to log errors

Many commands and plugins use `item.write()` to update tags. Since the success
of the call is not critical to the functionality of most consumers we want to
catch any exceptions, log an error and continue with our task. The new method
encapsulates this logic.

This fixes #675.
Merge pull request #676 from geigerzaehler/item-try-write

Add item.try_write() to log errors