Tightened up and generalized the new tags API
Fixed commit amend