fixes #3790 - Added support for isolated engine to foreman menu.

Isolated engines needs to run the route helpers in the plugin context. Since the menu is common to the plugins and the main app, menu items urls needs to be computed at the correct context.
This patch add option to the 'menu' method.
An isolated engine needs to declare
```ruby
 :engine => MyPlugin::Engine
```
for each menu item.
I was experimenting with declaring an engine is isolated instead of repeating the declaration for each menu item but favored the proposed solution because it lets an isolated plugin writer to interact with foremans controllers too.

This pull request replaces PR #1075