Feature/shareable indexing

Does this need to be public? If so, we should move it to BitVectors.