Added WADL methode extraction ; Extraction of XSD-Types ; Output of JS to use as API

Hi,

I used your work as a base for generating a API to access my REST-Service and maybe it is helpful for you.

I did a lot changes in reading the WADL file and xsd file to generate a API that offers a 'easy' way of accessing the methods and types (the resulting file will use jQuery for accessing the data).
The resulting structure looks like:
```javascript
dal.'myType'.'myMethod'([param1(optional),][param2(optional),][data(optional),]successCallBack, errorCallBack)
```
It offers a structure(object) of the type, too via 
```javascript
dal.'myType'.baseType
```
 I use it for creating new copy's of it to benefit of the Netbeans CodeCompletition.
<b>
Note: I use only 'application/json' for response and request!
</b><i>
If you have some questions or suggestions, don't hesitate to ask!
</i>
---

Some Example:
```javascript
//The clone function
function clone(obj) {
    if (null === obj || "object" !== typeof obj) return obj;
    var copy = obj.constructor();
    for (var attr in obj) {
        if (obj.hasOwnProperty(attr)) copy[attr] = obj[attr];
    }
    return copy;
}

//Create a new translation and a new category
var newTranslation = clone(dal.translation.baseType);
newTranslation.description = 'Group ' + data;
newTranslation.translationId = '';

//create the translation
dal.translation.create(newTranslation,
        function(translationId)/*the method responses the new id*/ {
            var newCategory = clone(dal.category.baseType);
            newTranslation.translationId = Number(translationId);
            newCategory.translationId = newTranslation;
            newCategory.categoryId = '';

            dal.category.create(
                    newCategory, function(categoryId)
                    {/*more fancy stuff*/}, function() {
                alert('failed to creat a new category');
            });
        },
        function() {
            alert('failed creation of a new translation');
        });
```
Node of the WADL for the translation. You will see, that I'm ignoring the method nodes with the name 'OPTIONS', because I couldn't find a use for it (yet).
```xml
<resource path="rest.translation">
    <method id="findAll" name="GET">
        <response>
            <ns2:representation element="translation" mediaType="application/xml"/>
            <ns2:representation element="translation" mediaType="application/json"/>
        </response>
    </method>
    <method id="create" name="POST">
        <request>
            <ns2:representation element="translation" mediaType="application/xml"/>
            <ns2:representation element="translation" mediaType="application/json"/>
        </request>
        <response/>
    </method>
    <method id="apply" name="OPTIONS">
        <request>
            <representation mediaType="*/*"/>
        </request>
        <response>
            <representation mediaType="application/vnd.sun.wadl+xml"/>
        </response>
    </method>
    <method id="apply" name="OPTIONS">
        <request>
            <representation mediaType="*/*"/>
        </request>
        <response>
            <representation mediaType="text/plain"/>
        </response>
    </method>
    <method id="apply" name="OPTIONS">
        <request>
            <representation mediaType="*/*"/>
        </request>
        <response>
            <representation mediaType="*/*"/>
        </response>
    </method>
    <resource path="{from}/{to}">
        <param name="from" style="template" type="xs:int"/>
        <param name="to" style="template" type="xs:int"/>
        <method id="findRange" name="GET">
            <response>
                <ns2:representation element="translation" mediaType="application/xml"/>
                <ns2:representation element="translation" mediaType="application/json"/>
            </response>
        </method>
        <method id="apply" name="OPTIONS">
            <request>
                <representation mediaType="*/*"/>
            </request>
            <response>
                <representation mediaType="application/vnd.sun.wadl+xml"/>
            </response>
        </method>
        <method id="apply" name="OPTIONS">
            <request>
                <representation mediaType="*/*"/>
            </request>
            <response>
                <representation mediaType="text/plain"/>
            </response>
        </method>
        <method id="apply" name="OPTIONS">
            <request>
                <representation mediaType="*/*"/>
            </request>
            <response>
                <representation mediaType="*/*"/>
            </response>
        </method>
    </resource>
    <resource path="{id}">
        <param name="id" style="template" type="xs:int"/>
        <method id="remove" name="DELETE"/>
        <method id="edit" name="PUT">
            <request>
                <ns2:representation element="translation" mediaType="application/xml"/>
                <ns2:representation element="translation" mediaType="application/json"/>
            </request>
        </method>
        <method id="find" name="GET">
            <response>
                <ns2:representation element="translation" mediaType="application/xml"/>
                <ns2:representation element="translation" mediaType="application/json"/>
            </response>
        </method>
        <method id="apply" name="OPTIONS">
            <request>
                <representation mediaType="*/*"/>
            </request>
            <response>
                <representation mediaType="application/vnd.sun.wadl+xml"/>
            </response>
        </method>
        <method id="apply" name="OPTIONS">
            <request>
                <representation mediaType="*/*"/>
            </request>
            <response>
                <representation mediaType="text/plain"/>
            </response>
        </method>
        <method id="apply" name="OPTIONS">
            <request>
                <representation mediaType="*/*"/>
            </request>
            <response>
                <representation mediaType="*/*"/>
            </response>
        </method>
    </resource>
    <resource path="count">
        <method id="countREST" name="GET">
            <response>
                <representation mediaType="text/plain"/>
            </response>
        </method>
        <method id="apply" name="OPTIONS">
            <request>
                <representation mediaType="*/*"/>
            </request>
            <response>
                <representation mediaType="application/vnd.sun.wadl+xml"/>
            </response>
        </method>
        <method id="apply" name="OPTIONS">
            <request>
                <representation mediaType="*/*"/>
            </request>
            <response>
                <representation mediaType="text/plain"/>
            </response>
        </method>
        <method id="apply" name="OPTIONS">
            <request>
                <representation mediaType="*/*"/>
            </request>
            <response>
                <representation mediaType="*/*"/>
            </response>
        </method>
    </resource>
</resource>
```