LPS-44347

Hi Jorge,

I created PortletURLImplTest to be sure I won't create regressions when fixing portal URLs encoding. 

But I found some small bugs in PortletURLImpl:
1, when you set/change portletId / plid it's not correctly reflected
2, multiple calls toString() makes URL longer and longer - inside toString() the class merges render parameters into internal _params map, each time you call toString() it appends them to existing values

Please let me know if I should send this PR to somebody else (Ray is on vacation). Thanks!