- rename flag_enum to cenum because it not only provide functions related to flag enum, but also make C++ enum used like C enum.
- rename testbench to test. - add benchmark for future development.