Optimize hashing by using smhash algorithm; optimize many functions with generators and local functions; introduce dna_sequence as subclass of string exposing kmer iterator