PortletURLImpl test and fixes - LPS-44709, LPS-44701, LPS-44347

Hi Jorge

/cc @shuyangzhou @mdelapenya

I rewrote the tests from scratch because they were not able to catch regressions created during the last peer reviews.

Changes from the previous version - the last pull in the chain that Brian sent me: https://github.com/topolik/liferay-portal/pull/69
* Created complex tests including tests for WSRP URL generation
* Applied most of the improvements from peer reviews
* Added almost identical fixes (commits) - I also added test code in each commit

Thanks.