Rewind rack.input before reading from it

If there is a middleware before better_errors, it may read from env['rack.input'] and leave it in eof state, thus causing better_errors to get a JSON parse error on an empty string.
This rewinds rack.input before reading from it, may fix #93, #84.