When displaying navigations three times last navigation has data of previous navigation.
servicemanager is a requirement
Fetch model from event parameter

The model used for rendering can be modified during the
EVENT_RENDERER and EVENT_RENDERER events. If only attributes
(like the template) are modified, the current behaviour does
not raise problems. However, when the entire view model is
swapped out, the current behaviour raises problems.

A use case for swapping out view models is the principle of a
three step view pattern. The <html>, <head> and contents of the
<head> is usually the same for every layout you use. If you
want to abstract that contents into a "wrapper" layout, you
create a new view model, grab the model from the event and use
the model from the event as a child. In code:

```
$model = $e->getModel();
$model->setCaptureTo('foo');

$wrapper = new ViewModel;
$wrapper->setTemplate('layout/bar');
$wrapper->addChild($model);

$e->setModel($wrapper);
```
Merge pull request #4140 from Spalax/ZF2-DoubleMenuDisplayingIssue

When displaying navigations three times last navigation has data of prev...
Merge pull request #4161 from gabriel403/patch-5

servicemanager is a requirement
[#4161] Mark ServiceManager as optional

- It's an optional dependency only, as the helper system is opt-in, via the
  renderers -- which are optional as well.
Merge pull request #4164 from juriansluiman/hotfix/view-model-event

Fetch model from event parameter