remove default empty objects; add getters to return an empty object if None was set; add tests