Menu applet/Shell Toolkit:  Add a polygon widget class and implement it in
the menu applet to prevent inadvertant category changes when moving the mouse
over to the applications box.

The polygon is drawn and acts like a mask, preventing selection changing while
your mouse movement is towards the app box.

It is normally invisible but can be made visible to help debugging
Have box follow mouse, so we don't get trapped.  (Still need work)
A bit more tweaking.  I'm pretty satisfied now.  Actually works better when
debug mode is off - you're not 'trying' to follow the shape.
A little less category overlap
Fix a category selection problem (not strictly related)
Turn off debug, destroy mask box when the menu closes
Some more optimizations
turn off debug
Decrease box overlap a bit
Turn off debugging again
menu applet - remove animation on menu opening and closing

popupmenu.js - add toggle_with_options for opening/closing a menu
without animation or with a callback
Delay loading the All Applications category until the menu has opened.

Conflicts:
	files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js
Split up refresh applications and refresh places/recent to the full refresh
occurs less often.
load limit number of icons on startup

Conflicts:
	files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js
add some code to avoid hide/show redraws

Conflicts:
	files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js
port over O(N*N) patch to menu-again

Conflicts:
	files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js
make category key work if the app_id is null
Couple fixes
Turn off debug
Somehow lost this change for polygons