Skeleton of more general entity setup functionality, that I will plug into UI at a later date.
Updating comments now that the ui interaction has been updated.