makes it so a tag can own a tag through children and parent. Also changes the main category boolean to a type. Working on #32