Cleaning up exception handling, sendMessage now only throws IOException, encryption failure exceptions (caused by faulty code) now are logged but presented to the application as IOExceptions