Adding logic for charm tags.

Adding functionality to tag charms. This is a pre-cursor for charm annotations :)
let's split this over multiple lines for readability