JavaScript expand() and contract() hooks

This is more useful if someone wants to hook into the menu
programmatically rather than be at the whim of our bkv_menu_trigger class.

Also made the code a bit more robust so the browser doesn't whine
about calling methods on null objects.
Merge branch 'Bulgakov-object' into develop
CSS3 ease-in contract and expand transition
Switch light and dark in menu_icon hover
Make sprite transparent (again)

Somehow I messed up and overrode the new sprite with the old one...
Merge branch 'css3-transitions' into develop