Mutable sparse arrays

Adds immutable and mutable sparse arrays as `NSArray`/`NSMutableArray` subclasses.

This implementation uses an array of (index, object) tuples sorted by index with binary search semantics. Time/space comparisons against a hash table implementation forthcoming.

Comments/criticism welcome.