[WIP] advanced menu plugin

I am starting with this menu plugin. 
Here are some of my ideas about features:
-frequently used applications
-searching through the menu
-creating arbitrary categories
-drag n drop between categories
-hiding unused categories or applications

I am thinking about menu data model. I could use menu-cache data and then process user changes (drag &drop into another category and so on) to create menu data.

Feel free to post your ideas.