SI-6519  PagedSeq is not lazy enough

This was actually an issue with `length` of all things--it wasn't stopping scanning when it was past the end of what was requested.  It'd just gratuitously read everything.

Also fixed an overflow bug with isDefinedAt along the way (start + index > Int.MaxValue would always return true despite never working).