Attempt to reduce the amount of boiler-plated work when adding an
encoder.
Encoder can now encoder data.
Add decode test for Base64 and add object methods to Data.
Small changes here and there.
Refactor by extract common functionality to abstract super class for
secretkey, keypair cryptography/builder.
So many refactory to count.