store tags as a binary property list

This matches Finder's behavior.

Also, stop using the obsolete serialization methods.
split name and color information in tag data
get raw values (name+color) for tags
also set color label when setting tags

If the tag includes color data.

The method was taken from the File Attributes plug-in.
prevent raw value (name+color) from appearing in details
handle clearing and removing tags more gracefully

* don't try to set a NULL list of tags
* remove color label when all tags are removed
list all actions in the documentation