improvement for getting correct submenu's height (when menu's height doesn't equal to submenu's)

thanks for bringing us the great plugin! I've used it in my project and it works as expected. However, I found it had some issue for getting correct submenu's height when it doesn't equal to menu's (submenu is taller than menu for instance). In that case, the calculation of the mouse path triangle was not accurate。

I added an option to set submenu's max height so it gets the correct
height, rather than always using menu's height;
added leaveMenuTimeoutId, for not deactivating submenu if mouse is
moving to submenu but has exited menu.