Вчера неплохо покодил перед сном. Три часа убил на казалось бы простую задачу: при парсинге json сворачивать вложенные объекты. То есть из json вида {a: {x:100}} делать объект {y:100}
Уже засыпая понял, как сделать на порядок проще. Сегодня допилю сериализацию и выложу. Фактически, добавилась аннотация @Flatten, а так же необходимо зарегистрировать парсер в gson-объекте. Использовать в духе:

Class MyClass {
  @Flatten("a::x")
  int y;
}

В отличие от найденных в интернете решений, позволяет мерджить несколько полей из вложенных объектов, а так же не требует оберток вокруг результирующего типа.
Сегодня еще погоняю с кастомными типами и наверно на днях буду учиться выкладывать это в jcenter.