How to setup a flagging system
===

I was wondering if someone could point me to the right direction in setting up a flagging/notification system.  I'd say very similar to a tagging system.  If anyone knows of any tutorial or example setups, that would be great. 

**Purpose** 

Basically, the flags are to attach to data items including customers, properties, contractors, applications, etc with the role of notifying users of an important piece of info regarding that item.  The flags should come from a predetermined list of items where users can add or remove. 

**Database**

I was thinking about going with a 3 table setup.  

- flags table: the list of available flags, along with settings determining what those
flags are applicable to (customers, properties, etc).
- linking tables indicating a given item has a given flag attached.
- the appropriate entities tables 

**User Interface**

I would like some of the functionalities be similar to that of stack overflow's such as the add and removing of tags.  Maybe use jquery tag-it for this?  Mainly, I would like the user to be able to select the flag from a drop down list and a flag icon display when one or more flags have been selected. Mousing over the flag should show a tooltip listing the flags attached to that item. 
Sample visual: http://i232.photobucket.com/albums/ee2/nismomatic97/flag.png