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
Remove top and bottom padding from .bkv_main
Remove arbitrary top-padding from .bkv_menu in lg and xl
Update README; ids -> classes
Merge branch 'release-0.3'

Conflicts:
	README.md
	menu_sprite.png