Make text fields subclassable, add :search_by_default option

Howdy,

Thanks for the feedback.

Here's another crack at custom fulltext field types which lets the developer define arbitrary analysis for different text field types, and lets any text field be omitted from an unconstrained keyword search via a setup-time option.

-john