title: Hamming distance (Simhash python) giving out unexpected value
body: <p>I was checking out Simhash module ( <a href="https://github.com/leonsim/simhash" rel="nofollow">https://github.com/leonsim/simhash</a> ).</p>
  
  <p>I presume that the Simhash("String").distance(Simhash("Another string")) is the hamming distance between the two strings. Now, I am not sure I understand this "get_features(string) method completely, as shown in (<a href="https://leons.im/posts/a-python-implementation-of-simhash-algorithm/" rel="nofollow">https://leons.im/posts/a-python-implementation-of-simhash-algorithm/</a>). </p>
  
  <pre><code>def get_features(s):
      width = 2
      s = s.lower()
      s = re.sub(r'[^\w]+', '', s)
      return [s[i:i + width] for i in range(max(len(s) - width + 1, 1))]
  </code></pre>
  
  <p>Now, when I try to compute distance between "aaaa" and "aaas" using the width 2, it gives out the distance as 0.</p>
  
  <pre><code>from simhash import Simhash
  
  Simhash(get_features("aaas")).distance(Simhash(get_features("aaaa")))
  </code></pre>
  
  <p>I am not sure what am I missing out in here.</p>