title: How to tweak the NLTK sentence tokenizer
body: <p>I'm using NLTK to analyze a few classic texts and I'm running in to trouble tokenizing the text by sentence. For example, here's what I get for a snippet from <em><a href="http://www.gutenberg.org/cache/epub/2701/pg2701.txt">Moby Dick</a></em>:</p>
  
  <pre><code>import nltk
  sent_tokenize = nltk.data.load('tokenizers/punkt/english.pickle')
  
  '''
  (Chapter 16)
  A clam for supper? a cold clam; is THAT what you mean, Mrs. Hussey?" says I, "but
  that's a rather cold and clammy reception in the winter time, ain't it, Mrs. Hussey?"
  '''
  sample = 'A clam for supper? a cold clam; is THAT what you mean, Mrs. Hussey?" says I, "but that\'s a rather cold and clammy reception in the winter time, ain\'t it, Mrs. Hussey?"'
  
  print "\n-----\n".join(sent_tokenize.tokenize(sample))
  '''
  OUTPUT
  "A clam for supper?
  -----
  a cold clam; is THAT what you mean, Mrs.
  -----
  Hussey?
  -----
  " says I, "but that\'s a rather cold and clammy reception in the winter time, ain\'t it, Mrs.
  -----
  Hussey?
  -----
  "
  '''
  </code></pre>
  
  <p>I don't expect perfection here, considering that Melville's syntax is a bit dated, but NLTK ought to be able to handle terminal double quotes and titles like "Mrs." Since the tokenizer is the result of an unsupervised training algo, however, I can't figure out how to tinker with it.</p>
  
  <p>Anyone have recommendations for a better sentence tokenizer? I'd prefer a simple heuristic that I can hack rather than having to train my own parser. </p>