Ability to configure punctuation

These changes allow users to set the punctuation pattern in the initializer so that they may use other patterns to split keywords with. (e.g. Keep email addresses as a whole and not split on the @-sign.)