Hi,
1) There are a number of different ways it could work and it’s really a matter of personal preference. The main reason to have it expand the sub menu on first tap by default is that otherwise most mobile end users would not ever expand the sub menus and see the sub pages options – they would just keep tapping and loading the main links. And not using the whole menu item just as sub menu toggle allows setting actual links that could be followed by the users on second tap – even if they expect the sub menu to get hidden on second tap instead of the parent link loaded, they would learn what to expect on the next page (hopefully :)). So, yeah, I mean all diifferent behaviors have their pros and cons.
But anyway, this could be tweaked via the API.
For a), use this additional code:
http://www.smartmenus.org/forums/topic/href-not-working-on-parent-as-expected/#post-3025
If you would like b), you could use this:
http://www.smartmenus.org/forums/topic/hide-submenu-of-clicked-menu-item-only/#post-2714
For 2) you could try using the hideOnClick: false
option.