Cache requested workflows in UrlGenerator

UrlGenerator often is requested to create multiple
urls for the same workflow.  Cache the loaded workflows
instead of requesting them each and every time.

Change-Id: Id2f8dfce05fa7798934832ba94cb75edc151a2dc
Merge "Cache requested workflows in UrlGenerator"