two small fixes

- changed input type requirement from text to text or number (html5 input type)
this doesn't change any behavior but it allows libraries such as angularjs to use the correct input type

- sometimes the steps array misses the last value due to float point calculation error
changed how steps are calculated by adding a small number to the end condition