While **much** more complex and slower for regular menus, it has advantages:
* Better performance scaling when state count grow
* Prevent most accidental unsupported state colors
* Prevent a big if elseif elseif... switch copy pasted in all item_styles
* Make it easier to register new states
As for the 'bloated' created by this commit, it will be moved when I will
fix issue #12