Support different camera reflection heights

Currently a fixed height of 32 blocks is used to compute surface reflections. This PR makes this value flexible through a getter/setter in `Camera` and also uses a newly introduced sea level parameter to find meaningful values for this.

Every reflection level requires a rendering pass which is why only one reflection level is supported.

As the world generator defines this value, it must also be communicated to remote clients. This is done through the `ServerInfoMessage` class.