LPS-43705 3 bug fixes for adding/editing pages

Question: 

How come you have to check for both? Shouldn't they both be the same?

```
SessionMessages.contains(renderRequest, "requestProcessed") || SessionMessages.contains(request, "requestProcessed")
```

Answer:
Hi Brian, I had added the explanation to the commit, but you probably missed it. Maybe there is a better way to achieve this, I will try to explain better the problem.

In this situation, we are executing an action from a portlet in page A (dockbar in page /link-to-welcome) and then we redirect to the same portlet in page B (dockbar in page /welcome). If we add the SessionMessage to the actionRequest and then use SessionMessages.contains(renderRequest, "requestProcessed"), the SessionMessage won't be found from the portlet in page B because the message is stored in the portletSession, which is finally stored in a map that used the plid as part of the key. The portletSession is different for the same portlet (even if it is not instanciable) in different pages and therefore the SessionMessages not shared.

For this reason, I had to add the SessionMessage to the HttpServletRequest (then it is stored in the session) and it can be found in the other page using SessionMessages.contains(request, "requestProcessed"). I checked that using the renderRequest doesn't find the SessionMessage.

All the changes related to this are in a separate commit explaining the change so that we can change it easily for a different mechanism if we have another way of achieving this.

Thank you very much Brian! :)