code: public static ObjectMapper mapperWithSaneDefaults() {
          return new ObjectMapper().enable(SerializationFeature.INDENT_OUTPUT)
                  .configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false)
                  .configure(MapperFeature.SORT_PROPERTIES_ALPHABETICALLY, true)
                  .setSerializationInclusion(JsonInclude.Include.NON_NULL)
                  .setSerializationInclusion(JsonInclude.Include.NON_EMPTY);
      }
docs: Gets a new jackson mapper applying our sane defaults on top. The sane
  defaults are the following:
  
  <ul>
  <li>format/indent the output</li>
  <li>write dates in a human readable format</li>
  <li>sort properties alphabetically</li>
  <li>don't include properties that were null</li>
  </ul>
  
  <p>This method allows you to change the mapper in your own way, adding mixins and what not. The change
  was made by a request from https://github.com/nikolavp/approval/pull/23</p>
  
  @return a jackson object mapper with sane defaults