Can you explain the concept behind using a tagging system similar to Stack Overflow? Specifically, I am interested in the front-end implementation. Are there any specific libraries that offer features such as auto-complete and tag separation, similar to what is used on Stack Overflow or Pivotal Tracker?