GEOMESA-389 Refactor SimpleFeatureEncoder

Separated encoder trait from decoder trait
Hmmm...probably not...I decided to put the onus on the user for performance reasons