k-Dependency Vectors: A Scalable Causality-Tracking Protocol