Builder pattern usage

Converted current encoders to use Builder Pattern initialization
Provides example for subsequent encoder development.

Fixes #102 
I believe this line is outdated because you've improved it by generic, am I right? @cogmission