gsm/sms: Rewrite of SMC process, extracted from OpenBSC