Fix incorrect handling of number-only Strings read via jQuery API

##### Example
When sorting the following example with {data: 'value'}, the two numeric values will be received as Number instead of String, which will extremely screw up sorting.
```html
<ul class="sort">
    <li data-value="500">500</li>
    <li data-value="8">8</li>
    <li data-value="bar">bar</li>
    <li data-value="foo">foo</li>
</ul>
```

##### Solution
As all elements internally are meant to be Strings anyway it makes sense to force cast them when reading their values via the jQuery API from data(), attr(), val() or text().