fix #648 min/max validation for type number/range

In 1.11.0, min/max validation is broken for types 'number' and 'range'.

For an example, see http://jsbin.com/awokex/1

The cause is that min/max are interpreted as strings; this is necessary
for dates, but for numbers, "50" < "150" < "1000" does not hold.

See also #639, which seems to expect "50" < "150" < "1000" to hold even
for type 'text', and 69831a0 where this behaviour is introduced.
This commit does not change behaviour for type 'text': the html5 spec
says min/max do not apply to text (4.10.7.1.2).

Tested with grunt, added qunit test, verified in firefox and chromium.