Prevent building Index every time it is needed. It was a bad idea anyway.
When Index::new will return Result it will avoid things like Revlog::len
returning Result<usize> instead of usize.
- make Index owner of its bytes
- make Index::new return an error if offset != bytes.len()