Pass application UserAgent string down to RootNode and DaisOnlineNode
Open automatically when only one child, wait until narrator has presented the node
Better log which command navi is processing
Drop unused and unnecessary client_home parameter
Refactor play_before_onOpen to use NaviEngine's new beforeOnOpen method

Introduced two new nodes, ContextMenuNode and VirtualContextMenu, which
basically extends NaviEngine's MenuNode and VirtualMenuNode but
implements beforeOnOpen method
Refator info to use NaviEngine's new narrateInfo method