java refactor :cherry_blossom:
cleaning up the api :nut_and_bolt:
utility functions :wrench: :hammer: