Marketplace refactors from servlet links

These are `master`-suitable refactors for the Marketplace Portlet code.

These are all improvements realized from the Servlet view on marketplace work, specifically in the course of adding working hyperlinks to that view in https://github.com/Jasig/uPortal/pull/318 .

Themes:

* Makes the domain model richer by making `MarketplacePortletDefinition`s able to provide the render URL for the defined portlet and making their relatedPortlets also `MarketplacePortletDefinition`s.
* Continues to move features into the service layer and out of the controller layer, here the featured portlet determination.  This means that an adopter could implement a substitute strategy for determining Featured-ness and plug this in by replacing the marketplace service implementation.