use a factory method to create a processor class
Merge pull request #498 from tenderlove/factory

use a factory method to create a processor class