Breaks out sparse_set into its own type
Constructor accepts bare values which are easier to work with
Sparse set may calculate cardinality