Hi Matt,
It should be possible, but it would probably require custom development work.
For the reporting, the easiest way would be to add a custom user profile field 'SMS' (which could be hidden from the student). Each SMS would import their users with a different value in the field, which would then be available to report builder for reporting purposes.
Simon