Interceptors and observers: Added the capability to attach observer obje...

...cts, which get called after the SMS was sent, and interceptors, which get called before the SMS gets sent and can modify the message or stop its sending altogether. This follows more or less the same patterns as the Mail module in Ruby, or as ActionMailer