working utility model

Signed-off-by: James Rubingh <james@wrive.com>
basic refactor

Signed-off-by: James Rubingh <james@wrive.com>