Add some parts of GSM architecture

- mainly pushing this commit to see if img gets rendered.