* Expose the max receive message length channel argument + unittest
* `ClientError` GADT ctor => `ClientErrorResponse`, expose `ClientError`
Prior to this commit, the name `ClientError` was both:
- The name of a data constructor name for the `ClientResult` GADT
- A name of an internal sum type for capturing different kinds of client
errors
We want to expose the latter to users of the library, and so expose the latter
and rename the former.
* Remove unused `MultiWayIf` lang ext
* Squash merge from branch `joel-fix-build-issues-and-broken-tests`
* Update `proto3-wire` and `proto3-suite` refs in `stack.yaml`
* Update `proto3-wire` and `proto3-suite` refs via `cabal2nix` for `nix` builds
* Remove `compile-proto-file` from the repo, as it is now available via `proto3-suite`
* Update `proto3-suite` ref in `stack.yaml`
* Update `proto3-suite` ref via `cabal2nix` for `nix` builds
* Update `proto3-suite` and `proto3-wire` gitrevs
* Regenerate Echo and Arithmetic example modules from their respective .protos
* Fix typo
* echo client/server example: dead code removal, add command line params, improve output messages
* Add nix-build result to .gitignore
* Merge echo-client and echo-server directories to echo-hs/ directory; rename main modules accordingly
* Use our protobuf compiler to generate bindings for the Echo service
* Simplify echo.proto to just one endpoint; use highlevel client/server interfaces and codegen for echo example
* Remove repetition counts and thread spawns from echo client, parameterize payload
* Update default.nix