Fix truncation of bytes/bytes_read/bytes_written stats

These stats are stored in a `uint64_t` but we were truncating them to 32 bits.
Should we be using [strtoull](http://linux.die.net/man/3/strtoull) so we aren't casting away the sign?

It seems like there might be an edge case if you had a value greater than LLONG_MAX but less than ULLONG_MAX. The manual says the value would be truncated to LLONG_MAX, giving us 63 bits instead of 64.