Remove SecMgr dependency on slf4j

Slf4j is still a dependency of OpenSAML.
diff --git a/build.xml b/build.xml
index 1d8f825..9b4046c 100644
--- a/build.xml
+++ b/build.xml
@@ -81,7 +81,6 @@
       <include name="joda-time-1.6.jar"/>
       <include name="opensaml-2.3.2.jar"/>
       <include name="openws-1.3.1.jar"/>
-      <include name="slf4j-api-1.5.10.jar"/>
       <include name="xmltooling-1.2.2.jar"/>
     </fileset>
   </path>
diff --git a/src/com/google/enterprise/secmgr/saml/HTTPSOAP11MultiContextDecoder.java b/src/com/google/enterprise/secmgr/saml/HTTPSOAP11MultiContextDecoder.java
index b997127..5021b89 100644
--- a/src/com/google/enterprise/secmgr/saml/HTTPSOAP11MultiContextDecoder.java
+++ b/src/com/google/enterprise/secmgr/saml/HTTPSOAP11MultiContextDecoder.java
@@ -27,11 +27,11 @@
 import org.opensaml.xml.XMLObject;
 import org.opensaml.xml.parse.ParserPool;
 import org.opensaml.xml.util.DatatypeHelper;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.logging.Level;
+import java.util.logging.Logger;
 
 import javax.xml.namespace.QName;
 
@@ -42,7 +42,7 @@
 public class HTTPSOAP11MultiContextDecoder extends BaseSAML2MessageDecoder {
 
   /** Class logger. */
-  private final Logger log = LoggerFactory.getLogger(HTTPSOAP11MultiContextDecoder.class);
+  private static final Logger log = Logger.getLogger(HTTPSOAP11MultiContextDecoder.class.getName());
 
   /** QNames of understood SOAP headers. */
   private final List<QName> understoodHeaders = new ArrayList<QName>();
@@ -102,7 +102,6 @@
   @Override
   protected void doDecode(MessageContext messageContext) throws MessageDecodingException {
     if (!(messageContext instanceof SAMLMessageContext<?, ?, ?>)) {
-      log.error("Invalid message context type, this decoder only support SAMLMessageContext");
       throw new MessageDecodingException(
           "Invalid message context type, this decoder only support SAMLMessageContext");
     }
@@ -116,10 +115,9 @@
     }
 
     if (soapBodyChildren.size() < 1) {
-      log.error("Unexpected number of children in the SOAP body, " + soapBodyChildren.size()
-          + ".  Unable to extract SAML message");
       throw new MessageDecodingException(
-          "Unexpected number of children in the SOAP body, unable to extract SAML message");
+          "Unexpected number of children in the SOAP body, " + soapBodyChildren.size()
+          + ". Unable to extract SAML message");
     }
 
     if (thisChild >= soapBodyChildren.size()) {
@@ -132,16 +130,15 @@
     thisChild++;
 
     if (!(incomingMessage instanceof SAMLObject)) {
-      log.error("Unexpected SOAP body content.  Expected a SAML request but recieved {}",
-          incomingMessage.getElementQName());
       throw new MessageDecodingException(
           "Unexpected SOAP body content.  Expected a SAML request but recieved "
               + incomingMessage.getElementQName());
     }
     SAMLObject samlMessage = (SAMLObject) incomingMessage;
 
-    log.debug("Decoded SOAP messaged which included SAML message of type {}",
-              samlMessage.getElementQName());
+    log.log(Level.FINE,
+        "Decoded SOAP messaged which included SAML message of type {}",
+        samlMessage.getElementQName());
     samlMsgCtx.setInboundSAMLMessage(samlMessage);
 
     populateMessageContext(samlMsgCtx);
@@ -183,8 +180,6 @@
   private void start(SAMLMessageContext<SAMLObject, SAMLObject, SAMLObject> samlMsgCtx)
       throws MessageDecodingException {
     if (!(samlMsgCtx.getInboundMessageTransport() instanceof HTTPInTransport)) {
-      log.error(
-          "Invalid inbound message transport type, this decoder only support HTTPInTransport");
       throw new MessageDecodingException(
           "Invalid inbound message transport type, this decoder only support HTTPInTransport");
     }
@@ -195,7 +190,7 @@
           "This message deocoder only supports the HTTP POST method");
     }
 
-    log.debug("Unmarshalling SOAP message");
+    log.fine("Unmarshalling SOAP message");
     soapMessage = Envelope.class.cast(unmarshallMessage(inTransport.getIncomingStream()));
 
     Header messageHeader = soapMessage.getHeader();
diff --git a/src/com/google/enterprise/secmgr/saml/HTTPSOAP11MultiContextEncoder.java b/src/com/google/enterprise/secmgr/saml/HTTPSOAP11MultiContextEncoder.java
index f982483..0794408 100644
--- a/src/com/google/enterprise/secmgr/saml/HTTPSOAP11MultiContextEncoder.java
+++ b/src/com/google/enterprise/secmgr/saml/HTTPSOAP11MultiContextEncoder.java
@@ -28,14 +28,13 @@
 import org.opensaml.ws.transport.http.HTTPTransportUtils;
 import org.opensaml.xml.XMLObjectBuilderFactory;
 import org.opensaml.xml.util.XMLHelper;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 import org.w3c.dom.Element;
 
 import java.io.IOException;
 import java.io.OutputStreamWriter;
 import java.io.UnsupportedEncodingException;
 import java.io.Writer;
+import java.util.logging.Logger;
 
 /**
  * SAML 2.0 SOAP 1.1 over HTTP MultiContext binding encoder.
@@ -48,7 +47,7 @@
   private HTTPOutTransport outTransport;
 
   /** Class logger. */
-  private final Logger log = LoggerFactory.getLogger(HTTPSOAP11MultiContextEncoder.class);
+  private static final Logger log = Logger.getLogger(HTTPSOAP11MultiContextEncoder.class.getName());
 
   /** Constructor. */
   public HTTPSOAP11MultiContextEncoder() {
@@ -78,7 +77,6 @@
   @Override
   protected void doEncode(MessageContext messageContext) throws MessageEncodingException {
     if (!(messageContext instanceof SAMLMessageContext<?, ?, ?>)) {
-      log.error("Invalid message context type, this encoder only supports SAMLMessageContext");
       throw new MessageEncodingException(
           "Invalid message context type, this encoder only supports SAMLMessageContext");
     }
@@ -87,8 +85,6 @@
         (SAMLMessageContext<SAMLObject, SAMLObject, SAMLObject>) messageContext;
 
     if (!(messageContext.getOutboundMessageTransport() instanceof HTTPOutTransport)) {
-      log.error(
-          "Invalid outbound message transport type, this encoder only supports HTTPOutTransport");
       throw new MessageEncodingException(
           "Invalid outbound message transport type, this encoder only supports HTTPOutTransport");
     }
@@ -106,9 +102,7 @@
     signMessage(samlMsgCtx);
     samlMsgCtx.setOutboundMessage(envelope);
 
-    if (log.isDebugEnabled()) {
-      log.debug("Adding SAML message to the SOAP message's body");
-    }
+    log.fine("Adding SAML message to the SOAP message's body");
 
     body.getUnknownXMLObjects().add(samlMessage);
   }
@@ -124,10 +118,8 @@
       XMLHelper.writeNode(envelopeElem, out);
       out.flush();
     } catch (UnsupportedEncodingException e) {
-      log.error("JVM does not support required UTF-8 encoding");
       throw new MessageEncodingException("JVM does not support required UTF-8 encoding");
     } catch (IOException e) {
-      log.error("Unable to write message content to outbound stream", e);
       throw new MessageEncodingException("Unable to write message content to outbound stream", e);
     }
   }
@@ -136,9 +128,7 @@
    * Builds the SOAP message to be encoded.
    */
   protected void buildSOAPMessage() {
-    if (log.isDebugEnabled()) {
-      log.debug("Building SOAP message");
-    }
+    log.fine("Building SOAP message");
     XMLObjectBuilderFactory builderFactory = Configuration.getBuilderFactory();
 
     @SuppressWarnings("unchecked")