Introduced a better message structure and wrote notes for designing the implementation