message: add support for bool to protocol
diff: @@ -33,10 +33,16 @@ inline size_t write_le(T value, uint8_t* buffer);
  template<typename T>
  inline size_t read_le(T* value, const uint8_t* buffer);
  +template<>
  +inline size_t write_le<bool>(bool value, uint8_t* buffer) {
  + buffer[0] = value ? 1 : 0;
  + return 1;
  +}
  +
  template<>
  inline size_t write_le<uint8_t>(uint8_t value, uint8_t* buffer) {
  buffer[0] = value;
  - return 2;
  + return 1;
  }
  template<>
  @@ -71,10 +77,16 @@ inline size_t write_le<float>(float value, uint8_t* buffer) {
  return write_le<uint32_t>(*reinterpret_cast<const uint32_t*>(&value), buffer);
  }
  +template<>
  +inline size_t read_le<bool>(bool* value, const uint8_t* buffer) {
  + *value = buffer[0];
  + return 1;
  +}
  +
  template<>
  inline size_t read_le<uint8_t>(uint8_t* value, const uint8_t* buffer) {
  *value = buffer[0];
  - return 2;
  + return 1;
  }
  template<>
  @@ -358,6 +370,14 @@ template<>
  inline const char* get_default_json_modifier<uint8_t>() {
  return "\"type\":\"uint8\",\"access\":\"rw\"";
  }
  +template<>
  +inline const char* get_default_json_modifier<const bool>() {
  + return "\"type\":\"bool\",\"access\":\"r\"";
  +}
  +template<>
  +inline const char* get_default_json_modifier<bool>() {
  + return "\"type\":\"bool\",\"access\":\"rw\"";
  +}
  class Endpoint {
  public:
  