* ui: refactor out the taglist component to use a recursive pattern * Make sure simple rendering tests pass