Added exception handling to codec

- sets state to 'errored' in case of a failure
- state machine spins empty after that
- curve_codec_errored () informs application
Make curve_codec_t fully symmetric
First stage of implementing curve_client and curve_server classes

- made curve_codec_t more symmetric for peer keys
- added keystore class to allow multiple keys stored in single file
- added z85 class for key encoding to/from Z85 text format
- added curve_client and curve_server classes (in progress)
Generated documentation
First draft of Curve client and server sockets

- server does not yet handle multiple clients properly
- server needs hooks to do ZAP authentication