fleshing out implementation of Entity and EntityManager