cleaned up tagging

using oops and inheritance to generate json