1.2.0: throw exception when encoding. error log when decoding. (#13)
* throw exception when encoding. error log when decoding. * improve error messages * add covering unit tests
* throw exception when encoding. error log when decoding. * improve error messages * add covering unit tests