implemented tagging system, kept join table clean of trash entries