This is a good first pass but we'll need to deal with nested Entities somehow such as lists/collections of Entities