Introduce EntityViewFactory

This is just the EntityViewFactory part of I31a18f05ec9d1

Change-Id: I457552b5017948d246becac6677c2e01464edc43
Merge "Introduce EntityViewFactory"