hash: add specialization for std::vector
var_degree_map: switch from uint16_t to uint_fast16_t
linear_set: initial work on the new representation
linear_set: don't keep two identical LinearSets in memory
sparse_vec: minor improvements
semilinear_set: new (more efficient) representation
semilinear_set: initial version of the new representation

To build the old version of semilinear sets, run cmake with
-DOLD_SEMILINEAR_SET.
Merge pull request #21 from michalt/semilinear

New representation of semilinear sets