Refactored getEssentials and getAll to share code by adding a set of flags so you can say what fields you want serialized into the map.  This resulted in a small signature change because getEssentials could now return List<Map<String,Object>>