adding logic to prevent rename/ add a category with existed name;
making default category more distinguished;
still got bug: rename/ remove category incurs error