Refactor to use names package for Action Id

Moved some of the Action Id code out into the names package, and made Action implement Entity (Tag())
exported functions need a comment