sdk/java: add Client.Builder
sdk/java: add Client.Builder

This introduces a builder for client objects. Certain parameters should be
set at the start and never again, e.g. connection pool details. This allows
those to be set in a clean manner.

Closes #258

chain/chain,chain/chain,chain/chain,chain/chain,chain/chain,chain/chain