client module refactor

Signed-off-by: Duke Stephenson <ascottkye@gmail.com>