libyang FEATURE introduce and use new ly_bool type

To indicate simple flags or true/false return values, use a standalone
ly_bool type.

We do not use stdbool's bool type to avoid need to mimic all its
features on platforms that do not provide it. ly_bool is just a simple
rename for uint8_t and the reason to use it is only a better readability
of the meaning of the variables or function's return values.
diff --git a/src/hash_table.h b/src/hash_table.h
index 6c44d6c..ae4008d 100644
--- a/src/hash_table.h
+++ b/src/hash_table.h
@@ -45,9 +45,9 @@
  * @param[in] val2_p Pointer to the second value, the one stored in the hash table.
  * @param[in] mod Whether the operation modifies the hash table (insert or remove) or not (find).
  * @param[in] cb_data User callback data.
- * @return 0 on non-equal, non-zero on equal.
+ * @return false (non-equal) or true (equal).
  */
-typedef uint8_t (*values_equal_cb)(void *val1_p, void *val2_p, uint8_t mod, void *cb_data);
+typedef ly_bool (*values_equal_cb)(void *val1_p, void *val2_p, ly_bool mod, void *cb_data);
 
 /** when the table is at least this much percent full, it is enlarged (double the size) */
 #define LYHT_ENLARGE_PERCENTAGE 75