added stemmer trait
renamed logic trait to Logic