Fixes#964
- Updated the `ZoneConnection` model to allow specifying the key algorithm.
- Added an `Algorithm` to the protobuf file, defaults to HMAC-MD5
- Updated JSON serialization to serdes the algorithm
- Updated the Portal to allow the user to specify the algorithm when connecting to a zone or managing a zone
Supported algorithms are:
```
case object HMAC_MD5 extends Algorithm("HMAC-MD5.SIG-ALG.REG.INT")
case object HMAC_SHA1 extends Algorithm("hmac-sha1.")
case object HMAC_SHA224 extends Algorithm("hmac-sha224.")
case object HMAC_SHA256 extends Algorithm("hmac-sha256")
case object HMAC_SHA384 extends Algorithm("hmac-sha384.")
case object HMAC_SHA512 extends Algorithm("hmac-sha512.")
```
**Note: needs some tests**