Memory bugfixes and optimalizations

- Bugfix in relay protocol that causes a memory leak
- Altered the code so memory allocations are re-used most of the times instead of freeing and allocating all the time
- All clients should now be memory leak and bug free
Fixed valgrind uninitialised value message while receiving
Fixed pthread possible leakages
Small fixes

- Generic weather station now accepts either the temperature or humidity value, or both at the same time
- The protocol->message is now initialized by default as NULL
- The webserver only accepts messages that are longer than 0 characters