Making implementer non-static one
Consistent naming for class parameter
Adding implementer settings