diff --git a/LICENSE.txt b/LICENSE.txt
index 4909afd..e529571 100644
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -176,3 +176,6 @@
    END OF TERMS AND CONDITIONS
 
 
+This software includes application interface descriptions generated in
+part from proprietary libraries licensed by Microsoft, Inc.
+
diff --git a/wsdls/Permissions.wsdl b/wsdls/Permissions.wsdl
new file mode 100644
index 0000000..ad602aa
--- /dev/null
+++ b/wsdls/Permissions.wsdl
@@ -0,0 +1,305 @@
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more
+     contributor license agreements. See the NOTICE file distributed with
+     this work for additional information regarding copyright ownership.
+     The ASF licenses this file to You under the Apache License, Version 2.0
+     (the "License"); you may not use this file except in compliance with
+     the License. You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <s:schema elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/sharepoint/soap/directory/">
+      <s:import namespace="http://www.w3.org/2001/XMLSchema" />
+      <s:element name="GetPermissionCollection">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="objectName" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="objectType" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetPermissionCollectionResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetPermissionCollectionResult">
+              <s:complexType mixed="true">
+                <s:sequence>
+                  <s:any />
+                </s:sequence>
+              </s:complexType>
+            </s:element>
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="AddPermission">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="objectName" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="objectType" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="permissionIdentifier" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="permissionType" type="s:string" />
+            <s:element minOccurs="1" maxOccurs="1" name="permissionMask" type="s:int" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="AddPermissionResponse">
+        <s:complexType />
+      </s:element>
+      <s:element name="AddPermissionCollection">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="objectName" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="objectType" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="permissionsInfoXml">
+              <s:complexType mixed="true">
+                <s:sequence>
+                  <s:any />
+                </s:sequence>
+              </s:complexType>
+            </s:element>
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="AddPermissionCollectionResponse">
+        <s:complexType />
+      </s:element>
+      <s:element name="UpdatePermission">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="objectName" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="objectType" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="permissionIdentifier" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="permissionType" type="s:string" />
+            <s:element minOccurs="1" maxOccurs="1" name="permissionMask" type="s:int" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="UpdatePermissionResponse">
+        <s:complexType />
+      </s:element>
+      <s:element name="RemovePermission">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="objectName" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="objectType" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="permissionIdentifier" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="permissionType" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="RemovePermissionResponse">
+        <s:complexType />
+      </s:element>
+      <s:element name="RemovePermissionCollection">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="objectName" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="objectType" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="memberIdsXml">
+              <s:complexType mixed="true">
+                <s:sequence>
+                  <s:any />
+                </s:sequence>
+              </s:complexType>
+            </s:element>
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="RemovePermissionCollectionResponse">
+        <s:complexType />
+      </s:element>
+    </s:schema>
+  </wsdl:types>
+  <wsdl:message name="GetPermissionCollectionSoapIn">
+    <wsdl:part name="parameters" element="tns:GetPermissionCollection" />
+  </wsdl:message>
+  <wsdl:message name="GetPermissionCollectionSoapOut">
+    <wsdl:part name="parameters" element="tns:GetPermissionCollectionResponse" />
+  </wsdl:message>
+  <wsdl:message name="AddPermissionSoapIn">
+    <wsdl:part name="parameters" element="tns:AddPermission" />
+  </wsdl:message>
+  <wsdl:message name="AddPermissionSoapOut">
+    <wsdl:part name="parameters" element="tns:AddPermissionResponse" />
+  </wsdl:message>
+  <wsdl:message name="AddPermissionCollectionSoapIn">
+    <wsdl:part name="parameters" element="tns:AddPermissionCollection" />
+  </wsdl:message>
+  <wsdl:message name="AddPermissionCollectionSoapOut">
+    <wsdl:part name="parameters" element="tns:AddPermissionCollectionResponse" />
+  </wsdl:message>
+  <wsdl:message name="UpdatePermissionSoapIn">
+    <wsdl:part name="parameters" element="tns:UpdatePermission" />
+  </wsdl:message>
+  <wsdl:message name="UpdatePermissionSoapOut">
+    <wsdl:part name="parameters" element="tns:UpdatePermissionResponse" />
+  </wsdl:message>
+  <wsdl:message name="RemovePermissionSoapIn">
+    <wsdl:part name="parameters" element="tns:RemovePermission" />
+  </wsdl:message>
+  <wsdl:message name="RemovePermissionSoapOut">
+    <wsdl:part name="parameters" element="tns:RemovePermissionResponse" />
+  </wsdl:message>
+  <wsdl:message name="RemovePermissionCollectionSoapIn">
+    <wsdl:part name="parameters" element="tns:RemovePermissionCollection" />
+  </wsdl:message>
+  <wsdl:message name="RemovePermissionCollectionSoapOut">
+    <wsdl:part name="parameters" element="tns:RemovePermissionCollectionResponse" />
+  </wsdl:message>
+  <wsdl:portType name="PermissionsSoap">
+    <wsdl:operation name="GetPermissionCollection">
+      <wsdl:input message="tns:GetPermissionCollectionSoapIn" />
+      <wsdl:output message="tns:GetPermissionCollectionSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="AddPermission">
+      <wsdl:input message="tns:AddPermissionSoapIn" />
+      <wsdl:output message="tns:AddPermissionSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="AddPermissionCollection">
+      <wsdl:input message="tns:AddPermissionCollectionSoapIn" />
+      <wsdl:output message="tns:AddPermissionCollectionSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="UpdatePermission">
+      <wsdl:input message="tns:UpdatePermissionSoapIn" />
+      <wsdl:output message="tns:UpdatePermissionSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="RemovePermission">
+      <wsdl:input message="tns:RemovePermissionSoapIn" />
+      <wsdl:output message="tns:RemovePermissionSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="RemovePermissionCollection">
+      <wsdl:input message="tns:RemovePermissionCollectionSoapIn" />
+      <wsdl:output message="tns:RemovePermissionCollectionSoapOut" />
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:binding name="PermissionsSoap" type="tns:PermissionsSoap">
+    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="GetPermissionCollection">
+      <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/GetPermissionCollection" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="AddPermission">
+      <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/AddPermission" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="AddPermissionCollection">
+      <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/AddPermissionCollection" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="UpdatePermission">
+      <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/UpdatePermission" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="RemovePermission">
+      <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/RemovePermission" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="RemovePermissionCollection">
+      <soap:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/RemovePermissionCollection" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:binding name="PermissionsSoap12" type="tns:PermissionsSoap">
+    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="GetPermissionCollection">
+      <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/GetPermissionCollection" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="AddPermission">
+      <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/AddPermission" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="AddPermissionCollection">
+      <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/AddPermissionCollection" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="UpdatePermission">
+      <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/UpdatePermission" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="RemovePermission">
+      <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/RemovePermission" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="RemovePermissionCollection">
+      <soap12:operation soapAction="http://schemas.microsoft.com/sharepoint/soap/directory/RemovePermissionCollection" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="Permissions">
+    <wsdl:port name="PermissionsSoap" binding="tns:PermissionsSoap">
+      <soap:address location="http://www.wssdemo.com/_vti_bin/Permissions.asmx" />
+    </wsdl:port>
+    <wsdl:port name="PermissionsSoap12" binding="tns:PermissionsSoap12">
+      <soap12:address location="http://www.wssdemo.com/_vti_bin/Permissions.asmx" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>
diff --git a/wsdls/README.txt b/wsdls/README.txt
deleted file mode 100644
index a5ba8e9..0000000
--- a/wsdls/README.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-Instructions for locating wsdls needed for building the Apache SharePoint ManifoldCF Plugin:
-
-(1) Install Microsoft Visual Studio.
-(2) Install SharePoint 3.0 (2007).
-(3) In the directory c:\Program Files\Microsoft SDKs\Windows\V6.x\bin, locate the utility "disco.exe".
-(4) You will need the following Microsoft SharePoint wsdl:
-
-Permissions.wsdl
-
-Obtain this as follows:
-
-disco /out:<output_directory> "http://<server_name>/_vti_bin/Permissions.asmx"
-
-The resulting Permissions.wsdl file should be placed in the same directory as this README.txt.
-
-
-
-
-
-
