add message wrapper and enums
optimize imports and reformat code