Submenu contexts for custom menus; submenu context test

There are a few parts to this PR:

* 2f0d1d8, which makes sure that all FM submenus hooked at priority 10 are added
* b7c2645, which is the attempted fix for #260 
* bab112d and 982adfe, which introduce a function and tests for calculating the FM context
* 87434f1, which stops `fm_trigger_context_action()` from firing an action of `fm_`