Problem with String& argument of a function
The function prototype in sms.h is 

char SendSMS(char *number_str, char *message_str);


if number is String, you should have 

sms.SendSMS((char*) number.c_str(),"Text message");


c_str() is a function of the Strinng class. It returns a pointer to internal char array of the String object.

The cast to char* is necessary because the author of the library didn't make the parameter constant with const char*. (It is a good practice, to declare pointers and references as constants.)

The error message no matching function for call to 'SMSGSM::SendSMS(String&amp;, const char [27]); shows the arguments you try to use. String&amp; is reference to some instance of the String type